ペア値の行を分割し、それをリストまたは辞書に変換する必要があります。Pythonでこれを行う簡単な方法を知っている人はいますか?
これから:
1
Petrov
2
Ivanov
3
Sidorov
に
["1", "Petrov"], ["2", "Ivanov"], ["3", "Sidorov"]
または辞書:
{"1": "Petrov", "2": "Ivanov", "3": "Sidorov"}
ペア値の行を分割し、それをリストまたは辞書に変換する必要があります。Pythonでこれを行う簡単な方法を知っている人はいますか?
これから:
1
Petrov
2
Ivanov
3
Sidorov
に
["1", "Petrov"], ["2", "Ivanov"], ["3", "Sidorov"]
または辞書:
{"1": "Petrov", "2": "Ivanov", "3": "Sidorov"}
このコードは辞書を返します:
inp = open("file")
d = dict()
k = list()
v = list()
for line in inp:
if line.strip("\n").isdigit():
k.append(line.strip("\n"))
else:
v.append(line.strip("\n"))
print dict(zip(k,v))
>>> strs = """1
Petrov
2
Ivanov
3
Sidorov"""
>>> i = iter(strs.split())
>>> {item: i.next() for item in i}
{'1': 'Petrov', '3': 'Sidorov', '2': 'Ivanov'}
また
>>> i = iter(strs.split())
>>> [[item, i.next()] for item in i]
[['1', 'Petrov'], ['2', 'Ivanov'], ['3', 'Sidorov']]