0

テキストを取り込み、1 行ずつ読み取ることができる Python コードを作成しようとしています。各行では、単語はキーとして辞書に入力され、数字はリストとして割り当てられた値である必要があります。ファイル 'topics.txt' は、次のような形式の何百もの行で構成されます。

1~cocoa
2~
3~
4~
5~grain~wheat~corn~barley~oat~sorghum
6~veg-oil~linseed~lin-oil~soy-oil~sun-oil~soybean~oilseed~corn~sunseed~grain~sorghum~wheat
7~
8~
9~earn
10~acq

などなど..例の単語ごとに辞書を作成する必要があります。理想的には、「穀物」という名前が辞書のキーになり、値はdict [穀物]:[5,6、..]になります。同様に、「ココア」は別のキーになり、値は dict[cocoa]:[1,..] になります。

with open("topics.txt", "r") as fi:  # Data read from a text file is a string
    d = {}
    for i in fi.readlines():
        temp = i.split()
        #i am lost here
        num = temp[0]
        d[name] = [map(int, num)]
4

2 に答える 2

0
with open("topics.txt", "r") as file:  # Data read from a text file is a string
    dict = {}
    for fullLine in file:
        splitLine = fullLine.split("~")
        num = splitLine[0]
        for name in splitLine[1:]:
            if name in dict:
                dict[name] = dict[name] + (num,)
            else
                dict[name] = (num,)
于 2013-06-17T17:21:00.460 に答える