不是默认值属性是吗
>>> class D:... def __init__(self,size=10):
... self.size=size
... def getsize(self):
... self.size
...
>>> d=D()
>>> d.getsize()
执行d.getsize()没有返回size的值,是python中self.size没有默认值属性(self.size.value)吗
而需要使用return 或者print,才给出值
我和其它编程语言是学混了吗 你的理解基本正确。在Python中,如果你希望一个方法(在其他语言中也可能被称为函数或子程序)返回一个值,你需要使用return关键字。
在你给出的例子中, getsize方法没有return关键字,所以它实际上是在 "无声"地结束,不返回任何值。如果你希望getsize方法返回size属性的值,你应该这样修改:
class D:
def __init__(self, size=10):
self.size = size
def getsize(self):
return self.size
现在,如果你创建一个D类的实例并调用getsize方法,它将返回size属性的值:
d = D()
print(d.getsize())# 输出: 10
这与很多其他编程语言(如Java,C++等)的行为是一致的:如果你希望函数返回一个值,你需要使用相应的关键字(通常是return )。在Python中,并没有self.size.value这样的默认值属性。你可以直接通过self.size访问实例的size属性,不需要.value 。
在Python中,类中的属性和方法都可以通过`self.`来访问。当我们执行d.getsize()时,`getsize`方法中的`self.size`并没有被返回或被打印出来,这是因为函数缺少返回语句或者打印语句。
更具体地说,在 `getsize` 方法中,`self.size`只是一个变量的引用,它的值需要显式地返回或打印才能看到。所以你需要使用return或者print的方式来将`size`属性值返回,例如:
class D:
def __init__(self, size=10):
self.size = size
def getsize(self):
return self.size
d = D()
print(d.getsize()) # 输出 10
或者使用print语句:
class D:
def __init__(self, size=10):
self.size = size
def getsize(self):
print(self.size)
d = D()
d.getsize() # 输出 10
总之,在 Python 中,如果你想要得到函数内部某个变量的值,必须显式地使用`return` 或`print` 函数将其输出。
求最佳答案{:10_254:} isdkz 发表于 2023-6-19 18:25
你的理解基本正确。在Python中,如果你希望一个方法(在其他语言中也可能被称为函数或子程序)返回一个值, ...
https://fishc.com.cn/thread-229812-1-1.html
求评分 sfqxx 发表于 2023-6-19 18:28
https://fishc.com.cn/thread-229812-1-1.html
求评分
刚回到家咋评分呀{:10_333:} isdkz 发表于 2023-6-19 18:25
你的理解基本正确。在Python中,如果你希望一个方法(在其他语言中也可能被称为函数或子程序)返回一个值, ...
大佬,你可太懂了 nvli123 发表于 2023-6-19 20:36
刚回到家咋评分呀
我只有收藏、分享和淘贴的功能{:10_250:}
页:
[1]