如何将数据从文本文件导入python的循环

时间:2018-08-29 12:31:31

标签: python python-3.x for-loop tab-delimited-text

编辑:

cosiek.txt中的数据:

time  20
speed 50
sth   30
car   new

将文本(制表符分隔)文件中的数据导入python脚本时遇到问题

我知道了

name,value = line.split("\t")

ValueError: not enough values to unpack (expected 2, got 1)

这是我的cosiek44.txt的代码和图片

enter image description here

variables = {}

with open("cosiek44.txt") as f:
     for i,line in enumerate(f):
        if i <=2:
            name,value = line.split("\t")
            variables[name] = float(value)
        else:
            name,value = line.split("\t")
            variables[name] = str(value)

a=variables["time"]
b=variables["speed"]
c=variables["sth"]
d=variables["new"]

1 个答案:

答案 0 :(得分:0)

这应该有效:

with open('cosiek44.txt') as f:
    lines=f.readlines()
    for line in lines:
        line_content=lines.split()
        if line_content[-1].isdigit():
            variables[line_content[0]]=int(line_content[-1])
        else:
            variables[line_content[0]]=line_content[-1]

我不知道您做错了什么,除了文件底部可能存在空行或for i,line in enumerate(f):行中有错误