我正在尝试将 .txt 文件 (lib.txt) 中的逗号分隔列表导入到 python 列表中。然后,我想迭代列表中的每个项目,将每个值作为参数传递给另一个函数。一旦完成,循环应该继续到列表中的下一个项目,并且是无限的,因为一旦到达列表的末尾,它就会重新开始。
txt 文件(lib.txt)示例:
483749, 9384723, 38485903, 4875659, 27388495
这就是我正在尝试的:
def iterateList():
li=open('lib.txt').readlines()
li=list(li.split(','))
for i in li:
otherFunction(i)
我在使用这段代码时遇到了一些问题。在 python 3.6 中,我无法运行第三行(使用 li.split),我猜测是因为 li 不是字符串。但如果我在尝试拆分之前将 li 转换为字符串,它也不起作用。
我的做法正确吗?你会采取不同的做法吗?
感谢您的浏览。
最佳答案
readlines
返回一个列表,而你想对字符串进行分割,所以需要使用read
来返回字符串。
一个可能的解决方案是:
def iterateList():
with open('lib.txt') as f:
data = f.read().split(',')
while True:
for i in data:
otherFunction(i)
关于Python - 从txt文件导入列表,迭代并作为参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60119444/