Python 循环引用报错


文件名 json.py
代码很简单

import json

data = {'a':"A",'b':"b",'c':3}
print data
print type(data)

代码被执行了两次

{'a': 'A', 'c': 3, 'b': 'b'}
<type 'dict'>
{'a': 'A', 'c': 3, 'b': 'b'}
<type 'dict'>

当 import json 的时候

Traceback (most recent call last):
  File "json.py", line 3, in <module>
    import json
  File "/data/code/Python/Test/json.py", line 9, in <module>
    data_string = json.dumps(data)
AttributeError: 'module' object has no attribute 'dumps'

这证明文件被循环引用了,自己写的 json.py 文件被解析成了系统的 json 包。
把文件重命名成 json1.py,执行成功。

{'a': 'A', 'c': 3, 'b': 'b'}
<type 'dict'>
分享:

评论