文件內容如下:
liuyang,123456
liyun,123456
zhangsna,12345lkj
#方法一:從文件中讀取數據,一行讀取一個列表,讀取出一個嵌套的列表,再轉換成字典
with open('users', 'r', encoding='utf-8')as f:
dic = []
for line in f.readlines():
line = line.strip('\n')
b = line.split(',')
dic.append(b)
dic = dict(dic)
print(dic)
#方法二:從文件中讀取數據,一行讀取一個列表,讀取出一個嵌套的列表,再轉換成字典
with open('users', 'r', encoding='utf-8')as f:
dic = []
for line in f.readlines():
line = line.strip('\n')
b = line.split(',')
dic.append(b)
new_dict = {}
for i in dic:
new_dict[i[0]] = i[1]
print(new_dict)
nums = new_dict.keys()[0]
print(nums)
print(nums[3])
#方法三:從文件中讀取數據,一行讀取一個列表,讀取出一個嵌套的列表,再轉換成字典
with open('users', 'r', encoding='utf-8')as f:
res = dict(line.strip().split(',') for line in f if line)
print(res)
執行過程中報錯:dictionary update sequence element #8 has length 1; 2 is required
找了半天問題出現的原因,結果竟因為文件內的最后一行是空行導致的。好吧,我就不說什么了,建議查找問題的時候打印出每一步的操作結果,就發現問題了。