Python 3 list(dictionary.keys()) 引发错误。我究竟做错了啥?
Posted
技术标签:
【中文标题】Python 3 list(dictionary.keys()) 引发错误。我究竟做错了啥?【英文标题】:Python 3 list(dictionary.keys()) raises error. What am I doing wrong?Python 3 list(dictionary.keys()) 引发错误。我究竟做错了什么? 【发布时间】:2014-05-27 19:51:25 【问题描述】:字典:
error['extras'] = 'expiration_month': 'Invalid field [expiration_month] - Missing field "expiration_month"'
代码:
list(error['extras'].keys())
结果:
*** Error in argument: "(error['extras'].keys())"
如果相关,我将在由 pdb.set_trace() 暂停的 django 进程中运行此代码。
【问题讨论】:
这看起来像一个嵌套字典。是有意的吗? 在 Python 3 上运行良好。您使用的是哪个版本的 Python/Django? 在 Python 2.7.6 上运行良好。错误是如何声明的?字典和调用list()
之间是否还有其他代码?
@merlin2011 是的,它应该是一个嵌套字典。我对 error['extras'] 处的键特别感兴趣。
【参考方案1】:
我认为问题在于list
is a pdb debugger command。文档说明如下:
调试器无法识别的命令被假定为 Python 语句并在程序的上下文中执行 调试。 Python 语句也可以以感叹号为前缀 点(!)。
所以你可以尝试像这样为list
加上前缀:
!list(error['extras'].keys())
【讨论】:
@user220419 我很高兴它成功了!这是一个很难弄清楚的错误。以上是关于Python 3 list(dictionary.keys()) 引发错误。我究竟做错了啥?的主要内容,如果未能解决你的问题,请参考以下文章
python数据结构list,string,tuple,set,dictionary常用操作
Python--数据类型之二 列表(List)元组(Tuple)字典(Dictionary)
python中的字符串,列表(list),元组,字典(Dictionary)