简单地说,我试图读取一个文件,该文件最终除了空格,逗号或新行之外只有数字。我已经阅读了很多这些帖子并修复了一些事情。我知道它们首先作为字符串导入。但是我遇到了将数字导入列表的问题。所以现在我有一份清单。这样会很好,除非我不能通过整数检查或添加数字。我们的想法是让每个用户都签名一个号码然后保存。我现在不担心保存,我只是担心输入数字并能够将它们作为单独的数字使用。
到目前为止我的代码:
fo1 = open('mach_uID_3.txt', 'a+')
t1 = fo1.read()
t2 = []
print t1
for x in t1.split():
print x
z = [int(n) for n in x.split()]
t2.append(z)
print t2
print t2[3]
fo1.close()
和它的读取文件。
0 1 2 25
34
23
我的结果非常难看但是你走了。
0 1 2 25
34
23
0
1
2
25
34
23
[[0], [1], [2], [25], [34], [23]]
[25]
Process finished with exit code 0
答案 0 :(得分:0)
要将所有数字放在一个展平的列表中,请执行以下操作:
fo1 = open('mach_uID_3.txt', 'a+')
number_list = list(map(int, fo1.read().split())
fo1.close()
但是打开这样的文件会更好:
with open('mach_uID_3.txt', 'a+') as fo1:
number_list = list(map(int, fo1.read().split())
所以你不必明确地关闭它。
答案 1 :(得分:0)
使用extend
代替append
:
t2.extend(int(n) for n in x.split())