python打印对象属性是一个tuple
时间: 2023-08-30 10:02:42 浏览: 270
Python 源码阅读—tuple
在Python中,对象的属性是通过使用点操作符(.)来访问的。当我们在代码中使用`print`函数来打印一个对象的属性时,实际上是打印了该对象的一个tuple。
具体而言,当我们使用`print`函数来打印对象的属性时,Python会调用对象的`__str__`方法,该方法返回一个字符串表示对象的属性。然后,`print`函数会将这个字符串打印出来。
而在大多数情况下,我们无需手动编写`__str__`方法,因为Python提供了一个默认的实现,即返回一个表示对象的类以及其属性的字符串。这个字符串的形式就是一个tuple。
例如,假设我们有一个名为`person`的对象,该对象具有名字、年龄和性别三个属性。如果我们使用`print`函数打印`person`对象的属性,那么输出的字符串将是一个tuple,其中包含了`person`对象的类以及其属性的信息。
示例代码如下所示:
```python
class Person:
def __init__(self, name, age, gender):
self.name = name
self.age = age
self.gender = gender
person = Person('小明', 20, '男')
print(person) # 输出:(<__main__.Person object at 0x000001234567890>, '小明', 20, '男')
```
上述代码中,我们定义了一个`Person`类,该类有三个属性:`name`、`age`和`gender`。然后,我们创建一个`person`对象,并使用`print`函数打印该对象。输出结果是一个tuple,其中包含了`person`对象的类以及其属性的信息。
需要注意的是,这个tuple中的第一个元素是表示对象的类的信息,而后续的元素则是对象的各个属性的值。
阅读全文