gpt4 book ai didi

python - 将文本文件转换为字典

转载 作者:太空狗 更新时间:2023-10-30 02:16:23 25 4
gpt4 key购买 nike

我有以下文本文件供网络需求。

Origin  1
1 : 0.0; 2 : 100.0; 3 : 100.0; 4 : 500.0; 5 : 200.0;
6 : 300.0; 7 : 500.0; 8 : 800.0; 9 : 500.0; 10 : 1300.0;
11 : 500.0; 12 : 200.0; 13 : 500.0; 14 : 300.0; 15 : 500.0;
16 : 500.0; 17 : 400.0; 18 : 100.0; 19 : 300.0; 20 : 300.0;
21 : 100.0; 22 : 400.0; 23 : 300.0; 24 : 100.0;

Origin 2
1 : 100.0; 2 : 0.0; 3 : 100.0; 4 : 200.0; 5 : 100.0;
6 : 400.0; 7 : 200.0; 8 : 400.0; 9 : 200.0; 10 : 600.0;
11 : 200.0; 12 : 100.0; 13 : 300.0; 14 : 100.0; 15 : 100.0;
16 : 400.0; 17 : 200.0; 18 : 0.0; 19 : 100.0; 20 : 100.0;
21 : 0.0; 22 : 100.0; 23 : 0.0; 24 : 0.0;

Origin 3
1 : 100.0; 2 : 100.0; 3 : 0.0; 4 : 200.0; 5 : 100.0;
6 : 300.0; 7 : 100.0; 8 : 200.0; 9 : 100.0; 10 : 300.0;
11 : 300.0; 12 : 200.0; 13 : 100.0; 14 : 100.0; 15 : 100.0;
16 : 200.0; 17 : 100.0; 18 : 0.0; 19 : 0.0; 20 : 0.0;
21 : 0.0; 22 : 100.0; 23 : 100.0; 24 : 0.0;

... records 4-23 elided ...

Origin 24
1 : 100.0; 2 : 0.0; 3 : 0.0; 4 : 200.0; 5 : 0.0;
6 : 100.0; 7 : 100.0; 8 : 200.0; 9 : 200.0; 10 : 800.0;
11 : 600.0; 12 : 500.0; 13 : 700.0; 14 : 400.0; 15 : 400.0;
16 : 300.0; 17 : 300.0; 18 : 0.0; 19 : 100.0; 20 : 400.0;
21 : 500.0; 22 : 1100.0; 23 : 700.0; 24 : 0.0;

现在我需要创建一个字典,它看起来应该是这样的:

{(1,1):0.0, (1,2):100.0, (1, 3):100.0, .......
(2, 1):100.0, (2,2):0, ......}

其中元组元素例如(1, 2)代表起点和终点,值代表需求(对于(1, 2)键为100.0 ).

我尝试了以下方法:

with open("trips.txt", "r") as f:
line = f.readline()
line = f.readline()
ind = 0
while len(line):
line = line.strip(';')
l = line.split()
print l

ind = ind + 1
if(ind == 5):
line = f.readline()
line = f.readline()
line = f.readline()
ind = 0
node = node + 1
else:
line = f.readline()

但我不认为我会带着这个去任何地方......

最佳答案

你绝对不会去任何地方,因为你根本没有引用字典。

我将在这里为您概述一个过程;你能填写详细信息吗?

my_dict = {}

while not EOF:
# read the "Origin" line
line = f.readline()

# extract the number on the right
origin_num = int( line.split()[-1] )

# Read the data lines
for _ in range(5): # each data chunk has 5 lines
data_line = readline()
entries = data_line.split(';') # split at semicolons

for field in entries:
y_key, value = field.split(:)
# Now, you need to convert both of those to integers,
# combine v_key with the origin_num,
# and insert that value into my_dict.

这会让你感动吗?请注意,您还需要处理空行、检测文件结尾等。

关于python - 将文本文件转换为字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44400688/

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