【问题标题】:Python - Class and functionPython - 类和函数
【发布时间】:2013-01-30 20:13:40
【问题描述】:

上了一堂课,其余的都完成了。任何指导表示赞赏。我已经得出了我坚持的部分问题,以保持简短。我还附上了我的工作。问题如下:

创建一个包含 1 个变量的类,其中包含自己的属性。 提供以下3种方法:

getvariable1() - 使用返回键 tp 返回属性 1 的值

setvariable1() - 这应该允许为属性 1 指定新值 - 接受输入需要额外的参数。

printerfun() - 打印对象的变量值。

创建您自己的类对象并为创建的对象调用 get & set 方法。使用printerfun() 方法检查代码是否有效。

我的工作:

class animal:
    horns = 2

    def printerfun(self):
        print getHorns() 

    def getHorns(self): #don't get where I should call this
        return self.horns

    def setHorns(horns): 
        self.horns = horns

animal_1 = animal()

F1 = raw_input('Please enter number of horns: ')
setHorns(F1) 

【问题讨论】:

  • Kesh,欢迎来到 StackOverflow 和 Python 编程。我们很乐意在这里帮助回答问题,并帮助初学者使用他们的代码。但是,我们希望当人们提出一个问题时,他们有一个他们想要解决的特定问题。您要求的是对您的代码的一般批评。如果您需要很好的帮助,我会发布一个新问题(使用您在此处粘贴的代码)并说明您在运行代码时期望发生什么,运行它时实际发生什么以及为什么再困惑。
  • @Wilduck -- 你为什么建议 OP 发布一个新问题,因为这个问题可以被编辑以使其适合?
  • @mgilson 确实有几个原因。一方面,这个问题已经有了答案;其次,它已经积累了反对票;第三,新用户似乎很难理解编辑他们的问题;第四,我以前看过这个建议。话虽如此,如果我违反了一些 SO 规则/习惯,我愿意接受纠正。

标签: python class function object


【解决方案1】:

不确定问题是什么,但无论如何......

您应该编写一个__init__ 成员函数来创建初始成员变量:

class animal:
    def __init__(self):
        self.horns = 2

您的代码创建了一个类变量,而不是普通的成员变量。

然后改变喇叭:

animal_1.setHorns(F1)

您的代码没有说明您要将变量更改为哪种动物。

【讨论】:

  • 代码还有其他一些问题。例如,setHorns 应将self 作为其第一个参数
猜你喜欢
  • 1970-01-01
  • 2011-02-22
  • 1970-01-01
  • 2012-12-21
  • 2014-12-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多