为什么导入 pdb 时会出现此错误? 'module' 对象没有属性 'ascii_letters'
Why I'm getting this error when I import pdb? 'module' object has no attribute 'ascii_letters'
尝试调试我的代码,我正在导入库 pdb
import sys
from subprocess import check_call
import pdb
/*functions*/
if __name__== "__main__":
/* Code */
我收到此错误:
File "reg.py", line 11, in <module>
import pdb
File "/usr/lib/python2.7/pdb.py", line 9, in <module>
import cmd
File "/usr/lib/python2.7/cmd.py", line 53, in <module>
IDENTCHARS = string.ascii_letters + string.digits + '_'
AttributeError: 'module' object has no attribute 'ascii_letters'
如果我创建一个新的 python 文件并尝试 运行 pdb,则会发生相同的错误。
您的一个文件名为 string.py
。重命名它并确保从脚本目录中删除所有 *.pyc
文件。
出于这个原因,为您自己的文件使用内置模块的名称是一种非常糟糕的做法。
$ echo "import pdb" > string.py
$ python string.py
File "string.py", line 1, in <module>
import pdb
File "D:\Python37\lib\pdb.py", line 73, in <module>
import cmd
File "D:\Python37\lib\cmd.py", line 50, in <module>
IDENTCHARS = string.ascii_letters + string.digits + '_'
AttributeError: module 'string' has no attribute 'ascii_letters'
您的文件夹中有 'string.py' 文件,其中存储了所有代码,只需重命名它,然后 运行 代码,它就可以正常工作 ;)
尝试调试我的代码,我正在导入库 pdb
import sys
from subprocess import check_call
import pdb
/*functions*/
if __name__== "__main__":
/* Code */
我收到此错误:
File "reg.py", line 11, in <module>
import pdb
File "/usr/lib/python2.7/pdb.py", line 9, in <module>
import cmd
File "/usr/lib/python2.7/cmd.py", line 53, in <module>
IDENTCHARS = string.ascii_letters + string.digits + '_'
AttributeError: 'module' object has no attribute 'ascii_letters'
如果我创建一个新的 python 文件并尝试 运行 pdb,则会发生相同的错误。
您的一个文件名为 string.py
。重命名它并确保从脚本目录中删除所有 *.pyc
文件。
出于这个原因,为您自己的文件使用内置模块的名称是一种非常糟糕的做法。
$ echo "import pdb" > string.py
$ python string.py
File "string.py", line 1, in <module>
import pdb
File "D:\Python37\lib\pdb.py", line 73, in <module>
import cmd
File "D:\Python37\lib\cmd.py", line 50, in <module>
IDENTCHARS = string.ascii_letters + string.digits + '_'
AttributeError: module 'string' has no attribute 'ascii_letters'
您的文件夹中有 'string.py' 文件,其中存储了所有代码,只需重命名它,然后 运行 代码,它就可以正常工作 ;)