Python 为什么我';我在导入pdb时遇到此错误';模块';对象没有属性';ascii字母';

Python 为什么我';我在导入pdb时遇到此错误';模块';对象没有属性';ascii字母';,python,pdb,Python,Pdb,试图调试代码时,我正在导入库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 <m

试图调试代码时,我正在导入库
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'
文件“reg.py”,第11行,在
导入pdb
文件“/usr/lib/python2.7/pdb.py”,第9行,在
导入命令
文件“/usr/lib/python2.7/cmd.py”,第53行,在
IDENTCHARS=string.ascii_字母+string.digits+''
AttributeError:“模块”对象没有属性“ascii字母”

如果我创建一个新的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'
$echo“导入pdb”>string.py
$python string.py
文件“string.py”,第1行,在
导入pdb
文件“D:\Python37\lib\pdb.py”,第73行,在
导入命令
文件“D:\Python37\lib\cmd.py”,第50行,在
IDENTCHARS=string.ascii_字母+string.digits+''
AttributeError:模块“string”没有属性“ascii字母”

您的文件夹中有一个“string.py”文件,其中存储了所有代码,只需将其重命名,然后运行代码,即可正常工作;)