python听写键()未返回所有值

2024-04-29 16:36:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我是python编程新手。我试图做一个程序,作为一个互动的skyrim魔药效果字典,以练习编码拼写检查功能。你知道吗

是我代码的相关部分。你知道吗

effects = {'curedisease' : ['Charred Skeever Hide', 'Felsaad Tern Feathers', 'Hawk Feathers', 'Mudcrab Chitin', 'Vampire Dust'], 'damagehealth' : ['Crimson Nirnroot', 'Deathbell', 'Ectoplasm', 'Emperor Parasol Moss', 'Falmer Ear', 'Human Flesh', 'Human Heart', 'Imp Stool', 'Jarrin Root', 'Nightshade', 'Nirnroot', 'Poison Bloom', 'Red Mountain Flower', 'River Betty', 'Skeever Tail', 'Small Antlers', 'Troll Fat', 'Void Salts'], 'damagemagicka' : ['Butterfly Wing',' Chaurus Eggs', 'Daedra Heart', 'Eye of Sabre Cat', 'Glow Dust', 'Hagraven Feathers', 'Hanging Moss', 'Human Heart', 'Jarrin Root', 'Luna Moth Wing', "Namira's Rot", 'Nordic Barnacle', 'Trama Root'], 'damageMagikaregen' : ['Bear Claws', 'Blue Butterfly Wing', 'Blue Mountain Flower', 'Chicken\'s Egg', 'Glow Dust', 'Hanging Moss', 'Human Heart', 'Jarrin Root', 'Nightshade', 'Spider Egg', 'Spriggan Sap'], 'damagestamina' : ['Blisterwort', 'Blue Butterfly Wing', 'Bone Meal', 'Canis Root', 'Crimson Nirnroot', 'Cyrodilic Spadetail', 'Giant\'s Toe', 'Jarrin Root', 'Nirnroot', 'Rock Warbler Egg', 'Spider Egg'], 'damagestaminasegen' : ['Creep Cluster', 'Daedra Heart', 'Frost Mirriam', 'Giant\'s Toe', 'Histcarp', 'Juniper Berries', 'Large Antlers', 'Silverside Perch', 'Skeever Tail', 'Wheat'], 'fear' : ['Blue Dartwing', 'Cyrodilic Spadetail', 'Daedra Heart', 'Namira\'s Rot', 'Powdered Mammoth Tusk'], 'fortifyalteration' : ['Grass Pod', 'River Betty', 'Spriggan Sap'], 'fortifybarter' : ['Butterfly Wing', 'Dragon\'s Tongue', 'Hagraven Claw', 'Tundra Cotton'], 'fortifyblock' : ['Bleeding Crown', 'Briar Heart', 'Honeycomb', 'Pearl', 'Slaughterfish Scales', 'Tundra Cotton'], 'fortifycarryWeight' : ['Creep Cluster', 'Giant\'s Toe', 'Hawk Beak', 'River Betty', 'Scaly Pholiata', 'Wisp Wrappings'], 'fortifyconjuration' : ['Blue Butterfly Wing', 'Blue Mountain Flower', 'Bone Meal', 'Frost Salts', 'Hagraven Feathers', 'Lavender'], 'fortifydestruction' : ['Beehive Husk', 'Ectoplasm', 'Glow Dust', 'Glowing Mushroom', 'Nightshade', 'Wisp Wrappings'], 'fortifyenchanting' : ['Blue Butterfly Wing', 'Hagraven Claw', 'Snowberries', 'Spriggan Sap'], 'fortifyhealth' : ['Bear Claws', 'Blue Mountain Flower', 'Giant\'s Toe', 'Glowing Mushroom', 'Hanging Moss', 'Wheat'], 'fortifyheavyarmor' : ['Ice Wraith Teeth', 'Sabre Cat Tooth', 'Slaughterfish Scales', 'Thistle Branch', 'White Cap'], 'fortifyillusion' : ['Dragon\'s Tongue', 'Dwarven Oil', 'Mora Tapinella', 'Scaly Pholiata', 'Taproot'], 'fortifylightarmor' : ['Ice Wraith Teeth', 'Sabre Cat Tooth', 'Slaughterfish Scales', 'Thistle Branch', 'White Cap'], 'fortifylockpicking' : ['Falmer Ear', 'Namira\'s Rot', 'Pine Thrush Egg', 'Spider Egg'], 'fortifymagicka   ' : ['Briar Heart', 'Ectoplasm', 'Histcarp', 'Jazbay Grapes', 'Red Mountain Flower', 'Tundra Cotton', 'Void Salts'], 'fortifymarksman' : ['Canis Root', 'Elves Ear', 'Juniper Berries', 'Spider Egg'], 'fortifyonehanded' : ['Bear Claws', 'Canis Root', 'Hanging Moss', 'Hawk Feathers', 'Rock Warbler Egg', 'Small Pearl'], 'fortifypickpocket' : ['Blue Dartwing', 'Nordic Barnacle', 'Orange Dartwing', 'Slaughterfish Egg'], 'fortifyrestoration' : ['Abecean Longfin', 'Cyrodilic Spadetail', 'Salt Pile', 'Small Antlers', 'Small Pearl'], 'fortifysmithing' : ['Blisterwort', 'Glowing Mushroom', 'Sabre Cat Tooth', 'Spriggan Sap'], 'fortifysneak' : ['Abecean Longfin', 'Beehive Husk', 'Frost Mirriam', 'Hawk Feathers', 'Human Flesh', 'Powdered Mammoth Tusk', 'Purple Mountain Flower'], 'fortifystamina' : ['Chaurus Eggs', 'Garlic', 'Large Antlers', 'Lavender', 'Slaughterfish Egg', 'Torchbug Thorax'], 'lingeringdamagehealth' : ['Imp Stool', 'Mora Tapinella', 'Orange Dartwing', 'Slaughterfish Egg', 'Slaughterfish Scales'], 'lingeringdamagemagicka' : ['Hagraven Claw', 'Purple Mountain Flower', 'Swamp Fungal Pod', 'Torchbug Thorax', 'Wheat'], 'lingeringdamagestamina' : ['Butterfly Wing', 'Chicken\'s Egg', 'Nightshade', 'Small Antlers'], 'paralysis' : ['Briar Heart', 'Canis Root', 'Human Flesh', 'Imp Stool', 'Swamp Fungal Pod'], 'ravagehealth' : ['Cyrodilic Spadetail', 'Eye of Sabre Cat', 'Giant Lichen', 'Jazbay Grapes', 'Silverside Perch', 'Skeever Tail'], 'ravagemagicka' : ['Frost Mirriam', 'Grass Pod', 'Lavender', 'Orange Dartwing', 'Red Mountain Flower', 'White Cap'], 'ravagestamina' : ['Bee', 'Bone Meal', 'Deathbell', 'Honeycomb', 'Thistle Branch'], 'regeneratehealth' : ['Garlic', 'Juniper Berries', 'Luna Moth Wing', 'Namira\'s Rot', 'Nordic Barnacle', 'Vampire Dust'], 'regeneratemagicka' : ['Dwarven Oil', 'Fire Salts', 'Garlic', 'Jazbay Grapes', 'Moon Sugar', 'Salt Pile', 'Taproot'], 'regeneratestamina' : ['Bee', 'Fly Amanita', 'Mora Tapinella', 'Scaly Pholiata'], 'resistfire' : ['Bone Meal', 'Dragon\'s Tongue', 'Elves Ear', 'Fire Salts', 'Fly Amanita', 'Mudcrab Chitin', 'Snowberries'], 'resistfrost' : ['Frost Mirriam', 'Frost Salts', 'Hawk Beak', 'Moon Sugar', 'Purple Mountain Flower', 'Silverside Perch', 'Slaughterfish Scales', 'Small Pearl', 'Snowberries', 'Thistle Branch'], 'resistmagic' : ['Bleeding Crown', 'Chicken\'s Egg', 'Crimson Nirnroot', 'Hagraven Claw', 'Lavender', 'Nirnroot', 'Tundra Cotton', 'Void Salts', 'Wisp Wrappings'], 'resistpoison' : ['Beehive Husk', 'Charred Skeever Hide', 'Falmer Ear', 'Garlic', 'Grass Pod', 'Mudcrab Chitin', 'Slaughterfish Egg', 'Thistle Branch', 'Troll Fat'], 'resistshock' : ['Blue Dartwing', 'Glow Dust', 'Glowing Mushroom', 'Hawk Beak', 'Pearl', 'Pine Thrush Egg', 'Snowberries', 'Swamp Fungal Pod'], 'restorehealth' : ['Blisterwort', 'Blue Dartwing', 'Blue Mountain Flower', 'Butterfly Wing', 'Charred Skeever Hide', 'Daedra Heart', 'Eye of Sabre Cat', 'Imp Stool', 'Rock Warbler Egg', 'Swamp Fungal Pod', 'Wheat'], 'restoremagicka ' : ['Briar Heart', 'Creep Cluster', 'Dwarven Oil', 'Ectoplasm', 'Elves Ear', 'Fire Salts', 'Frost Salts', 'Giant Lichen', 'Grass Pod', 'Human Flesh', 'Moon Sugar', 'Mora Tapinella', 'Pearl', 'Red Mountain Flower', 'Taproot', 'Vampire Dust', 'White Cap']}

effectslist = effects.keys()
print (effectslist)

问题是effectslist不会包含dictionary effects中的所有键。我不清楚它是一直省略相同的键还是循环列表,但我需要它来创建一个完整的字符串列表,在effects字典中用作键。你知道吗

有谁能向我解释一下为什么它没有列出一个完整的列表,以及我能做些什么来创建一个完整的列表?你知道吗

谢谢


Tags: eggbluerootwingpodhumanflowerdust
2条回答

我自己运行了代码,它看起来是len(effects)==len(effectslist),所以所有人都认为它返回了完整的列表。是什么让你觉得它没有返回完整的列表?请记住,字典并不是以固定的顺序存在的,因此当您查询关键字时,它们的顺序与您输入的顺序不同。你知道吗

The trouble is that effectslist will not contain all keys in the dictionary effects.

实际上,没有。它包含了所有的钥匙。你知道吗

首先,keys()返回正确的元素数:

>>> len(effects)
44
>>> len(effects.keys())
44

其次,它返回的所有元素都是唯一的:

>>> len(set(effects.keys()))
44

最后,每个返回的键都出现在字典中:

>>> all(k in effects for k in effects.keys())
True

如果您试图找到一个.keys()没有返回的特定键,我相信您会发现没有。你知道吗

相关问题 更多 >