我正在尝试使用python的cmd模块,我在网站上获得了这个测试代码 在python 3.2中编译这段代码时
import cmd
import os
class ShellEnabled(cmd.Cmd):
last_output = ''
def do_shell(self, line):
"Run a shell command"
print ("running shell command:", line)
output = os.popen(line).read()
print (output)
self.last_output = output
def do_echo(self, line):
"Print the input, replacing '$out' with the output of the last shell command"
# Obviously not robust
print (line.replace('$out', self.last_output))
def do_EOF(self, line):
return True
if __name__ == '__main__':
ShellEnabled().cmdloop()
我为cmd模块收到此错误。
AttributeError: 'module' object has no attribute 'Cmd'
第4行。
答案 0 :(得分:3)
我尝试使用python3.2.3
编写脚本并且它有效。您是否在此文件所在的目录中有一个名为cmd.py
的文件?如果这样做,则import cmd
将不会导入正确的模块。相反,它会在当前目录中导入cmd.py
。
我在目录中创建了一个名为cmd.py
的文件,并且遇到了与尝试运行脚本时相同的错误。因此,请删除当前目录中的cmd.py
,或者将其命名为其他内容。