有几种方法可以在Python中创建一个空的Dictionary,例如:
#method 1
Alan = {}
#method 2
John = dict()
我想创建许多词典来存储一组员工的个人信息。一个人的名字将在创建空字典时用作唯一的名字。员工姓名存储在文件(info.txt)中,每一行只有一个名字。
#info.txt
Alan
John
Fiona
... x Repeat N times
文件中名称或条目的数量是无法预测的,因此我希望有一个灵活的代码来处理这种情况。 我的代码将读取每一行,并尝试为每位员工创建一个空的Dictionary。但是,由于未定义字典,因此我的代码无法正常工作。
#read employee name from file
infoFile = open("info.txt","r")
#read every line and create Dictionary for each employee
for infoFileLine in infoFile:
if not infoFileLine.strip():
pass
else:
print("%s" %infoFileLine)
designFileLine = dict()
#update employee personal info
Alan["Age"] = 36
Alan["Height"] = 180
John["Age"] = 36
John["Height"] = 180
我是Python的新手,那么上面的代码有什么问题?还是有其他更好的方法呢? 预先谢谢你。
答案 0 :(得分:1)
您应该制作包含其他词典的主词典。这是一个简短的示例:
master = {}
names = ["Alan", "Peter"]
for n in names:
master[n] = {}
print(master)
输出为:
{'Alan': {}, 'Peter': {}}
只需将我的names
数组更改为一种file.readLines()
方法,它应该可以工作。