获得一个似乎没有多大意义的错误。

时间:2011-09-12 20:40:41

标签: python debugging dictionary pdb

我不断收到错误,该错误引用了我的代码中的一个词典。但我似乎无法找到导致问题的任何事情。有些东西可能会滑过我的眼睛,但不管怎么说这是来自命令行pdb 的错误。

为了解释发生了什么,这是一个相当大的字典,它告诉我这给程序一个'语法错误:无效语法'。箭头告诉我什么没有多大意义......再次引用这是pdb的结果。

distinctiveFeatures = ({1:'Beak',2:'Blood-Drenched',3:'Boiling or Steaming B
ody',4:'Constantly Shedding',5:'Distinctive Markings',6:'Elongated Neck',7:'Hood
',8:'Expanded bone Structure',9:'Albino',10:'Eye Stalks',11:'Glowing Eyes',12:'H
air',13:'Horns',14:'Lizard-Like Fin',15:'Fish-Like Fin',16:'Icy or Cold Body',17
:'Illusionary Features',18:'Metal-Like Features',19:'Multiple Arms',20:'Multiple
Heads',21:'Antlers',22:'Multiple Legs',23:'Multiple Eyes',24:'Stinger',25:'Odor
',26:'On Fire',27:'Oozing Sores',28:'Plant Features',29:'Prehensile Tongue',30:'
Pulsating Skin',31:'Faces',32:'Rocklike Features',33:'Rubber boned',34:'Rubbery
Body',35:'Scales',36:'Serpent Appendages',37:'Shade Form',38:'Shambling Gait',39
:'Shell',40:'Shimmering Body',41:'Skeletal Appearance',42:'Slimy',43:'Speech',44
:'Suction Cups on Limbs',45:'Tail',46:'Tentacles',47:'Transparent',48:'Unusual C
olor',49:'Weapons for Hands',50:'Wet or Drenched Body'51:'Wings',52:'Mechanical
Features',53:'Multiple Features',54:'Special'})



                                                       ^

3 个答案:

答案 0 :(得分:7)

在51之前缺少逗号。

将来,为了帮助追踪这种错误,它有助于不将所有内容放在一条巨线上,将它分成几行。这样箭头会更有帮助。

答案 1 :(得分:2)

元素50缺少一个尾随逗号。

您可以简化此行以调试此类错误。首先删除花括号之间的一半字符串。

如果问题仍然存在,请继续将剩余部分减半,直到找到导致错误的小部件并更正它。

答案 2 :(得分:2)

enter image description here您错过了一个逗号。

顺便问一下,为什么要把dictionary放在括号之间? 您可以({ ..},)使字典成为tuple的第一个元素, 或只是{..}的普通字典

使用显示语法着色的编辑器(例如IdleSciTe)可以提供很多帮助。

因为你的密钥都是整数,所以可能更容易做出list

distinctiveFeatures = ['Beak', 'Blood-Drenched', 'Boiling or Steaming Body', 'Constantly Shedding', 'Distinctive Markings', 'Elongated Neck', 'Hood', 'Expanded bone Structure', 'Albino', 'Eye Stalks', 'Glowing Eyes', 'Hair', 'Horns', 'Lizard-Like Fin', 'Fish-Like Fin', 'Icy or Cold Body', 'Illusionary Features', 'Metal-Like Features', 'Multiple Arms', 'MultipleHeads', 'Antlers', 'Multiple Legs', 'Multiple Eyes', 'Stinger', 'Odor', 'On Fire', 'Oozing Sores', 'Plant Features', 'Prehensile Tongue', 'Pulsating Skin', 'Faces', 'Rocklike Features', 'Rubber boned', 'RubberyBody', 'Scales', 'Serpent Appendages', 'Shade Form', 'Shambling Gait', 'Shell', 'Shimmering Body', 'Skeletal Appearance', 'Slimy', 'Speech', 'Suction Cups on Limbs', 'Tail', 'Tentacles', 'Transparent', 'Unusual Color', 'Weapons for Hands', 'Wet or Drenched Body', 'Wings', 'MechanicalFeatures', 'Multiple Features', 'Special']

获取你的元素:

distinctiveFeatures[0]

给出

'Beak'