2017-07-30 60 views
0

我需要知道什麼是將具有未知鍵和值(格式可以是txt)的文件轉換爲字典(或列表)的最簡單方法,例如第一個將鍵的值轉換爲可以進一步用其餘值來進行計算的變量。我下面不正確的代碼:將文件轉換爲字典並將特定鍵的值用作變量

file = input("Insert name of the file.") 
    try: 
     disc = open(file, 'r') 
     my_dictionary = {} 
     for line in disc: 
      k,v = line.rstrip().split() #in case of empty rows in file and 
      my_dictionary [k]= int(v) # spaces between keys and values 
     amount_k = len(my_dictionary) # lenght of dict 
     first_value = my_dictionary.item(1) 
     i=1 
     for sub in my_dictionary: 
      my_dictionary[sub] = my_dictionary[sub]/((1/i)*first_value*amount_k) 
      i += 1 
    except OSError: 
      print("the" , file ,"could not be read") 

我猜變量FIRST_VALUE不正確,之所以上面我的代碼不能正常工作或全部(回溯:FIRST_VALUE = my_dictionary.item(1) AttributeError的:「快譯通」對象沒有屬性'項目')?回想一下,我想知道如何將值轉換爲變量,我應該在這種情況下使用列表或類似的字典而不是字典(利弊)? 非常感謝提前!

+0

你是什麼意思*未知文件*?文件的*格式*是什麼? –

+1

你的「except」塊在哪裏? –

+0

請添加你的追蹤。 – nivhanin

回答

0

的第一項應my_dictionary.items()[0]

參見items方法doc