编写方法f(file,m,n)。文本文件a.txt,打印出M行,N列的值。注:列之间用“|”分割。注意异常处理
时间: 2024-01-21 15:17:17 浏览: 64
以下是使用Python编写的f(file, m, n)函数,用于从文本文件中读取前m行n列的值并以指定的格式打印出来:
```python
def f(file, m, n):
try:
with open(file, 'r') as f:
lines = f.readlines()
if len(lines) < m:
print(f"Error: File '{file}' contains only {len(lines)} lines, but {m} lines are requested.")
return
for i in range(m):
line = lines[i].strip().split()
if len(line) < n:
print(f"Error: Line {i+1} of file '{file}' contains only {len(line)} values, but {n} values are requested.")
continue
row = '|'.join(line[:n])
print(row)
except FileNotFoundError:
print(f"Error: File '{file}' not found.")
```
函数使用`with open`语句打开文件并读取所有行,然后根据输入的参数m和n逐行处理并打印输出。如果文件不存在或者请求的行数和列数超出了文件大小,会输出相应的错误信息。
使用示例:
```python
f('a.txt', 3, 4)
```
以上代码将打印出a.txt文件中前3行4列的值,每一行的值用竖线分隔。如果文件不存在或者请求的行数或列数不合法,将会输出错误信息。
阅读全文