好的,所以我通过执行以下操作将文本文件中的每一行转换为列表成员:
chkseq=[line.strip() for line in open("sequence.txt")]
所以当我打印chkseq时,我得到了:
['3','3']
我想要的是它看起来像这样:
[3,3]
我知道这是可能的,我只是不确定如何!我需要他们成为插入者,而不是字符串。因此,如果所有其他方法都失败了,这是我的主要目标:从.txt文件创建一个列表,其成员是整数(这将包含所有.txt文件)。
谢谢! -OSFTW
答案 0 :(得分:2)
看起来您想将字符串解释为整数。使用int
执行此操作:
chkseq = [int(line) for line in open("sequence.txt")]
它也可以使用map
而不是列表理解来编写:
chkseq = map(int, open("sequence.txt"))
答案 1 :(得分:1)
迭代列表中的元素并使用您首选的格式打印出来,而不是在一次打印整个列表时依赖于默认格式。
答案 2 :(得分:0)
假设您的数组被称为输入,并且您希望将值存储在名为chkseq的数组中,您的代码将是:
chkseq = [int(i) for i in input]
或者,如果你想在一行中做所有事情:
chkseq = [int(i.strip()) for i in open("sequence.txt")]
答案 3 :(得分:0)
将字符串传递给int
构造函数会尝试将其转换为int
。
>>> int('3')
3
>>> int('foo')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: 'foo'