【问题标题】:Creating a function within a class which has an integer value [duplicate]在具有整数值的类中创建函数[重复]
【发布时间】:2020-03-04 12:12:25
【问题描述】:

由于某种原因,在 self.weight 下获得“永远无法达到此代码”。代码一切正常,但是当我打印这个函数时返回了 self.weight inst

class Person:
    def __init__(self,name,weight):
        self.name=name
        self.weight=weight

    def BMI(self):
        return self.name
        return self.weight


person1=Person("john",52)
print(person1.BMI())

【问题讨论】:

  • 你为什么有return self.name?你期待什么输出?
  • 只是第一次测试课程

标签: python class self


【解决方案1】:

函数只能返回一个值,并在遇到第一个返回语句时终止。因此,调用BMI() 会返回名称和

return self.weight.

声明未达成。

【讨论】:

  • 谢谢,是只针对类中的函数还是一般的函数
  • 所有函数只能返回一个值。也就是说,该值可以是一个元组(有序对/三元组/等),因此有一些方法可以绕过该限制
  • 所以如果在 BMI 函数中,我想返回名字 john 和他的体重 52,我该怎么做,因为 return(self.name+self.weight) 不起作用
  • @mob 所有功能。如果你的函数是否在一个类中,真的没有区别除了一件事,即当该函数作为该类实例的属性访问时,第一个参数传递给实例本身.这就是为什么第一个参数通常命名为self,但请注意,它只是一个用于所有其他目的的函数。
猜你喜欢
  • 2015-10-22
  • 1970-01-01
  • 1970-01-01
  • 2019-12-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多