python按行读取数据(每行含有多个空格隔开的整数且包含多行)并以判断是否读到文件末尾的形式判断输入是否结束。
时间: 2024-10-03 17:00:46 浏览: 64
在Python中,你可以使用内置的`open()`函数打开文件,并配合`for`循环以及`split()`方法来逐行读取数据。如果你的数据是以空格分隔的整数,你可以这样做:
```python
with open('your_file.txt', 'r') as file: # 更改'your_file.txt'为你需要读取的实际文件名
line = file.readline() # 从文件开始读取第一行
while line: # 只要还有内容,就继续循环
numbers = line.strip().split() # 去掉行首尾空白,并按照空格分割成列表
for num in numbers:
try:
int_num = int(num) # 尝试将每个元素转换为整数
# 这里可以对整数做进一步处理...
except ValueError: # 如果转换失败(例如遇到非数字字符),说明已经到达文件末尾
break
else: # 没有发生异常,说明所有数字都成功转换,继续下一行
continue
line = file.readline() # 读取下一行
```
在这个例子中,当`readline()`返回`''`或`None`时,说明已达到文件末尾。如果在尝试转换数值时出错(`int()`函数会抛出`ValueError`),也意味着当前行无法转换为整数,即文件已结束。
阅读全文