gpt4 book ai didi

Python:非常基础,无法弄清楚为什么它不拆分为列出的较大数字而是拆分为单个整数

转载 作者:太空宇宙 更新时间:2023-11-04 06:44:58 25 4
gpt4 key购买 nike

这里的问题真的很快,其他一些人帮助我解决了另一个问题,但我无法让他们的任何代码工作,因为我不了解这里非常基本的东西。

8000.5   16745     0.1257
8001.0 16745 0.1242
8001.5 16745 0.1565
8002.0 16745 0.1595
8002.5 16745 0.1093
8003.0 16745 0.1644

我有一个这样的数据文件,当我输入时

f1 = open(sys.argv[1], 'rt')
for line in f1:
fields = line.split()
print list(fields [0])

我得到输出

['1', '6', '8', '2', '5', '.', '5']
['1', '6', '8', '2', '6', '.', '0']
['1', '6', '8', '2', '6', '.', '5']
['1', '6', '8', '2', '7', '.', '0']
['1', '6', '8', '2', '7', '.', '5']
['1', '6', '8', '2', '8', '.', '0']
['1', '6', '8', '2', '8', '.', '5']
['1', '6', '8', '2', '9', '.', '0']

而我本来希望通过尝试打印列表(字段)之类的东西来获得类似的东西

[16825.5, 162826.0 ....] 

我在这里缺少什么明显的东西?

谢谢!

最佳答案

删除列表.split() 已经返回一个列表。

您正在将字段的第一个 元素转换为列表:

>>> fields = ['8000.5', '16745', '0.1257']
>>> fields[0]
'8000.5'
>>> list(fields[0])
['8', '0', '0', '0', '.', '5']

如果您想将第一列作为列表,您可以随时构建一个列表:

myfirstcolumn = []
for line in f1:
fields = line.split()
myfirstcolumn.append(fields[0])

这可以简化为列表理解:

myfirstcolumn = [line.split()[0] for line in f1]

关于Python:非常基础,无法弄清楚为什么它不拆分为列出的较大数字而是拆分为单个整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10816595/

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