确定,因此我将此代码用于带有名称的文本文件,然后使用每个名称的第一个字母作为关键字并重复此字母作为字典值。我需要将其更改为值为与该首字母对应的名称列表的位置。我知道每个字母有多少个名字,但我不知道如何把这些名字变成一个列表,成为价值。 它应该做这样的事情:将字典的值更改为列表
(这是他的文本文件,我的功能会读)
Mary
Jane
Anna
Judith
Kim
Melody
Myriam
Lauren
Betty
Holley
那么字典应该这样做
{'A':['Anna'], 'B':['Betty'], 'H':['Holley'], 'J':['Judith','Jane'], 'K':
['Kim'], 'L':['Lauren'], 'M':['Mary','Melody','Myriam']}
但煤矿将只返回这一点:
{'A':1, 'B':1, 'H':1, 'J':2, 'K':1, 'L':1, 'M':3}
如何将其更改为我获取名称的位置?
这里是我的代码:
def newDictionary():
names={}
char = []
file = open(names)
lines = file.readlines()
for line in lines:
1char = file.read(line[1])
1char.append(char)
for keys,values in names():
return names
不能以数字开头的变量名。你必须写'firstChar'而不是'1char'。此外,字符串索引从0开始,而不是1,并且您不需要执行'file.read(line [0])'因为'line [0]'是一个字符串。 –