Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.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 3.x 此代码中返回的数据类型是什么?如果这是实例,那么如何使用此返回值获取值?_Python 3.x_Oop - Fatal编程技术网

Python 3.x 此代码中返回的数据类型是什么?如果这是实例,那么如何使用此返回值获取值?

Python 3.x 此代码中返回的数据类型是什么?如果这是实例,那么如何使用此返回值获取值?,python-3.x,oop,Python 3.x,Oop,代码: 输出: class A: class B: def __init__(self,value): self.value=value def get(self,value): return self.B(value) a=A() print(a.get(5)) 返回的数据类型是什么?是指针地址还是实例本身?我们如何使用这个返回的输出获取实例(我想要值) 当您调用a.get(5)时,任何帮助都将被告知您正在调用a

代码:

输出:

class A:
    class B:

        def __init__(self,value):
            self.value=value
    def get(self,value):
        return self.B(value)

a=A()
print(a.get(5))

返回的数据类型是什么?是指针地址还是实例本身?我们如何使用这个返回的输出获取实例(我想要值)

当您调用
a.get(5)
时,任何帮助都将被告知您正在调用
a
的特定实例内部的类
B
的构造函数,并返回新创建的
B
实例

我们可以非常简单地验证这一点:

<__main__.A.B object at 0x7f39df4dc5d0>
我们向构造函数提供相同的输入,但是因为它们是两个单独创建的实例,所以它们彼此不相等

但是,我们只需调用属性
value
,即可获取新实例的值:

>>> a.get(5) == a.get(5)
False
这里我们可以进行另一个比较,我们可以看到它现在返回
True
,因为属性中包含的值是相同的:

>>> a.get(5).value
5

在由双链表组成的位置列表中,我们如何给出元素的位置当我们创建一个新节点(实例)时,我们返回它的位置在一本书中,我看到返回距离,如上面的代码中所示,我们如何存储这些位置如果你试图实现双链表,那么我认为这是一个问题本身。你可以找到一个关于如何实现它的老问题。从“如何访问对象的属性”到“如何实现这种复杂的数据结构”是一个很大的飞跃。
>>> a.get(5).value
5
>>> a.get(5).value == a.get(5).value
True