【发布时间】:2014-02-17 19:57:56
【问题描述】:
这是我的代码。
import fileinput, random
from os import system as sys
from sys import exit
class crazy8(object):
question = raw_input("please enter a yes or no question \n")
def fortune(self, filex, current):
current = r"./"
fortunes = list(fileinput.input(filex))
sys("cd", current)
print random.choice(fortunes)
crazy8.fortune(r"./crazy8")
exit(0)
当我运行程序时,我输入了一个问题(我知道程序不关心输入的内容)。我想我在课堂上做错了什么。我知道当没有 class: 语句时它可以正常工作,但我需要那里的类(完成后,我将把它用作模块)。
问题后,我得到了
TypeError: unbound method fortune() must be called with crazy8 instance as first argument (got str instance instead)
(我还没有添加任何错误检查。如果文件 ./crazy8 不存在,我将尝试添加 try 和 catch/raise。另外,我稍后将添加一个自动 sys(" touch ./crazy8") (在 Mac/linux 上),在我了解如何在 Windows 上创建文件后,我将添加它。
【问题讨论】:
标签: python class python-3.x random