0

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

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

>>>h
<__main__.House object at 0x27ffbd0>

当您调用“h”时,程序应该返回“1234 Main Street”。我应该如何解决这个问题?

4

2 回答 2

4

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

class House:
    # other methods
    def __str__(self):
        return "%d %s" % (self.street_number, self.street_name)
于 2013-02-17T02:08:27.337 回答
0

....Python 中的一个名为 House 的类。它有实例变量......

一个类没有实例变量。该实例有

.

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

.

如果h它不是可调用对象(类,函数......),则无法调用

您所称的“调用”只是对 Python 向您呈现对象h的需求。由于它不是像整数或字符串那样的简单对象,而是一个实例,即具有数据属性和方法的属性的对象,Python 不会广泛地向您展示具有所有属性的实例和属性的值(对于某些实例可能很长),它会为您提供实例的简短描述,说明它是哪个类的实例,并给出它的地址。

于 2013-02-17T02:18:42.117 回答