如何修改Python代码实现读取文件并返回整数列表?
解决方法
你需要在读取每一行后做两个关键处理:
- 用
strip()去掉每行末尾的换行符及可能存在的空白字符,否则直接用int()转换会报错 - 调用
int()把清理后的字符串转换成整数
修改后的代码如下:
def file_int_list(file): with open(file, 'r') as f: # 仅读取文件的话,用只读模式更合适,无需r+ lst = [] lines = f.readlines() for row in lines: cleaned_row = row.strip() if cleaned_row: # 跳过空行,避免转换空字符串报错 lst.append(int(cleaned_row)) return lst
补充说明
- 将文件打开模式从
r+改为r,因为你只需要读取文件内容,不需要写入权限,这样更安全 - 增加空行判断逻辑,若文件中存在空行,程序不会因转换空字符串而抛出异常
- 变量名
rows改为row,更贴合循环中处理单行数据的语义
内容的提问来源于stack exchange,提问作者paulo mckone
相关产品推荐
相关产品推荐

