Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/344.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python在调用类对象时返回_Python_Class_Methods_Return - Fatal编程技术网

Python在调用类对象时返回

Python在调用类对象时返回,python,class,methods,return,Python,Class,Methods,Return,我正在用Python制作一个名为House的课程。它具有实例变量,例如街道名称和街道编号 h = House(1234, "main street") >>>h.street_name Main Street >>>h.street_number 1234 >>>h <__main__.House object at 0x27ffbd0> h=House(1234,“大街”) >>>h、 街道名称 大街 >>>h、 街道号码

我正在用Python制作一个名为House的课程。它具有实例变量,例如街道名称和街道编号

h = House(1234, "main street")
>>>h.street_name
Main Street
>>>h.street_number
1234

>>>h
<__main__.House object at 0x27ffbd0>
h=House(1234,“大街”)
>>>h、 街道名称
大街
>>>h、 街道号码
1234
>>>h

当你调用“h”时,程序应该返回“1234大街”。我应该如何处理这个问题?

您想定义一个返回字符串表示形式的
\uuuu str\uuuu
方法。例如:

class House:
    # other methods
    def __str__(self):
        return "%d %s" % (self.street_number, self.street_name)

您想定义一个返回字符串表示形式的
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
方法。例如:

class House:
    # other methods
    def __str__(self):
        return "%d %s" % (self.street_number, self.street_name)
…Python中一个叫做House的类。它有实例变量

类没有实例变量。该实例已被删除

“variable”在Python中是一个令人困惑的词。
Python不向开发人员提供“变量”(=框),只提供对象。
人们常常混淆地称之为“变量”的是标识符(=名称)。。。。或者也许。。。什么。。。我不知道,他们自己也不知道,因为在Python中使用developer时没有变量

如果
h
不是可调用对象(类、函数……),则不能调用它

您所谓的“调用”只是要求Python向您展示对象h。由于它不是一个简单的对象,不是一个整数或字符串,而是一个实例,也就是说,一个具有数据属性和方法的属性的对象,Python没有广泛地向您展示该实例及其所有属性和属性值(对于某些实例,它可能很长),它向您提供实例的简短描述,说明它是哪个类的实例,并给出其地址

…Python中一个叫做House的类。它有实例变量

类没有实例变量。该实例已被删除

“variable”在Python中是一个令人困惑的词。
Python不向开发人员提供“变量”(=框),只提供对象。
人们常常混淆地称之为“变量”的是标识符(=名称)。。。。或者也许。。。什么。。。我不知道,他们自己也不知道,因为在Python中使用developer时没有变量

如果
h
不是可调用对象(类、函数……),则不能调用它


您所谓的“调用”只是要求Python向您展示对象h。由于它不是一个简单的对象,不是一个整数或字符串,而是一个实例,也就是说,一个具有数据属性和方法的属性的对象,Python没有广泛地向您展示该实例及其所有属性和属性值(对于某些实例,它可能很长),它向您展示实例的简短描述,说明它是哪个类的实例,并给出它的地址。

Python命令提示符不是“调用”对象,而是调用对象的
\uu repr\uu()
方法,该方法假定返回表示对象值的字符串。如果对象没有
\uuuuu repr\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu()
方法,但有
\uuuuuuuuuuuuuuuuuuuuuuu。对于没有这两者的类,您看到的是默认方法返回的内容。当您说“call h”时,您的意思是
h()
?Python命令提示符不是“调用”对象,而是调用对象的
\u repr\uu()
方法,该方法假定返回一个表示对象值的字符串。如果对象没有
\uuuuu repr\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu()
方法,但有
\uuuuuuuuuuuuuuuuuuu。对于没有这两个选项的类,您看到的是默认方法返回的内容。当您说“call h”时,您的意思是
h()
\uuu repr\uu
应该返回有效的Python表达式,如果可能的话,该表达式将重建对象<代码>\uuuu str\uuuu
用于转换为字符串。@CatPlusPlus:谢谢,修复了
\uuuuuu repr\uuuu
应返回有效的Python表达式,如果可能的话,该表达式将重建对象<代码>\uuuu str\uuuu
用于转换为字符串。@CatPlusPlus:谢谢,修复了