gpt4 book ai didi

python - 使用(moSTLy)数字读取文件

转载 作者:太空宇宙 更新时间:2023-11-03 13:14:02 27 4
gpt4 key购买 nike

格式为:

0
995

112
// there is an empty line here too

所以,我正在做:

with open("in.txt") as f:
articles = f.readlines()
for article in articles:
article = int(article.split()[0])

但我得到:

IndexError: list index out of range

我认为它来自访问没有数字的行的 [0]。如何找到它(我对识别空行很感兴趣,因为这意味着应该停止收集当前列表并为下一个列表做准备)。

print articles
['0 \n', '995 \n', '\n', '112 \n', '\n']

最佳答案

with open(in.txt) as f:
articles = [int(line) for line in f.read().splitlines() if line]

如果您使用 splitlines 而不是 readlines\n 字符将被删除,因此您只需要检查空字符串

此外,需要我在上面使用的列表推导式来将结果存储在 articles 变量中。按照您的做法,每次都覆盖 article 变量,但没有任何内容被保存。

要分隔多个列表中的 block ,请执行以下操作:

with open(in.txt) as f:
article = []
articles = [article]
for line in f:
line = line.strip()
if not line:
article = []
articles.append(article)
continue
article.append(int(line))

关于python - 使用(moSTLy)数字读取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35354072/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com