python+可变类型元组
时间: 2023-11-26 14:04:05 浏览: 70
根据提供的引用内容,Python中的元组是不可变的对象,即一旦创建就不能在原处进行修改。但是,Python中有一种可变类型的元组,即namedtuple。namedtuple是一个工厂函数,它返回一个新的tuple子类,其中每个字段都有一个名字,这使得元组更具可读性和自文档性。namedtuple的实例与普通元组一样,可以通过索引和切片进行访问,但是也可以通过属性名进行访问。
以下是一个使用namedtuple创建可变类型元组的例子:
```python
from collections import namedtuple
# 创建一个namedtuple类
Person = namedtuple('Person', ['name', 'age', 'gender'])
# 创建一个Person实例
person1 = Person('Alice', 25, 'female')
# 访问Person实例的属性
print(person1.name) # 输出:Alice
print(person1.age) # 输出:25
print(person1.gender) # 输出:female
# 修改Person实例的属性
person2 = person1._replace(age=30)
print(person2) # 输出:Person(name='Alice', age=30, gender='female')
```
在上面的例子中,我们首先使用namedtuple创建了一个名为Person的类,该类有三个字段:name、age和gender。然后,我们创建了一个Person实例person1,并访问了其属性。最后,我们使用_replace()方法创建了一个新的Person实例person2,该实例的age属性被修改为30。
阅读全文