属性错误'模块'对象没有属性' ascii_letters'

时间:2015-09-23 17:36:20

标签: python python-2.7

为什么我从下面的代码中收到标题中的错误消息?

编辑:因为我没有注意我的写作方式" ascii"。谢谢大家

以下代码在我的Iphone IDE上工作正常但在我的Windows 7上没有(带有Notepad ++和命令提示符)。我检查了目录,看看是否存在任何我看不到的string.py文件。我在桌面上运行了一个搜索,找到了4个名为的文件,其中两个表示它们已被编译。我删除了已编译的文件,并将其他两个文件删除。我是个菜鸟。

import string
import random

x = string.acsii_letters
y = random.choice(x)

print y * 5

4 个答案:

答案 0 :(得分:3)

应该是string.ascii_letters个字母而不是string.acsii_letters。如果这只是代码语句中的拼写错误,那么您的猜测必须正确,PYTHONPATH中还有另一个字符串模块。打开python shell,

import string
print(string.__file__)

确保从正确的路径导入字符串。如果它不从PYTHONPATH删除该路径。

答案 1 :(得分:0)

你有一个错字。它应该是string.ascii_lettersstring.letters。您可以使用dir(string)查看字符串模块的属性,并查看可以访问的内容。

答案 2 :(得分:0)

在python 3中,我发现使用string.ascii_letters就像string.letters一样会导致AttributeError。

答案 3 :(得分:-1)

我遇到了同样的问题,原因是文件名与模块名相同。所以只需重命名您的文件模块就可以正常工作