在 Python 中向元组中插入一个元素
Insert an element into a Tuple in Python
要在 Python 中将元素插入到元组中:
- 使用
list()
该类将元组转换为列表。 - 使用
list.insert()
方法将元素插入到列表中。 - 使用
tuple()
该类将列表转换为元组。
主程序
my_tuple = ('a', 'b', 'c') # ✅ insert element into tuple using list.insert() my_list = list(my_tuple) my_list.insert(3, 'd') new_tuple = tuple(my_list) print(new_tuple) # 👉️ ('a', 'b', 'c', 'd') # ------------------------------ # ✅ insert element at the end of a tuple new_tuple_2 = my_tuple + ('d',) # 👈️ note comma print(new_tuple_2) # 👉️ ('a', 'b', 'c', 'd') # ------------------------------ # ✅ insert element at the beginning of a tuple new_tuple_3 = ('z',) + my_tuple print(new_tuple_3) # 👉️ ('z', 'a', 'b', 'c')
代码示例显示了在 Python 中将元素插入元组的 3 种最常用方法。
元组与列表非常相似,但实现的内置方法较少并且是不可变的(无法更改)。
由于无法更改元组,因此将元素插入元组的唯一方法是创建一个包含该元素的新元组。
第一个示例将元组转换为列表,使用该list.insert()
方法并将列表转换回元组。
主程序
my_tuple = ('a', 'b', 'c') my_list = list(my_tuple) my_list.insert(3, 'd') new_tuple = tuple(my_list) print(new_tuple) # 👉️ ('a', 'b', 'c', 'd')
列表类接受一个可迭代对象并返回一个列表对象。
list.insert
方法在给定位置
插入一个项目。
该方法采用以下 2 个参数:
姓名 | 描述 |
---|---|
指数 | 要在其前插入的元素的索引 |
物品 | 要在给定索引处插入的项目 |
在示例中,我们d
在索引处添加了字符串,3
并使用tuple()
该类将列表转换回元组。
或者,您可以使用加法 (+) 运算符。
使用加法 (+) 运算符将元素插入到元组中,例如
new_tuple = my_tuple + ('new', )
. 元组是不可变的,因此为了将元素插入到元组中,我们必须创建一个包含该元素的新元组。
主程序
my_tuple = ('a', 'b', 'c') # ✅ insert element at the end of a tuple new_tuple_2 = my_tuple + ('d',) # 👈️ note comma print(new_tuple_2) # 👉️ ('a', 'b', 'c', 'd') # ------------------------------ # ✅ insert element at the beginning of a tuple new_tuple_3 = ('z',) + my_tuple print(new_tuple_3) # 👉️ ('z', 'a', 'b', 'c')
请注意,我们将值括在括号中并添加了一个尾随逗号,以便加法 (+) 运算符左右两侧的值是元组。
尾随逗号很重要,是创建元组和字符串之间的区别。
主程序
print(type(('a',))) # 👉️ <class 'tuple'> print(type(('a'))) # 👉️ <class 'str'>
元组有多种构造方式:
- 使用一对括号
()
创建一个空元组 - 使用尾随逗号 –
a,
或(a,)
- 用逗号分隔项目 –
a, b
或(a, b)
- 使用
tuple()
构造函数
将元素插入元组的另一种方法是使用重新分配。
主程序
my_tuple = ('a', 'b', 'c') my_tuple += ('d',) # 👈️ note comma print(my_tuple) # 👉️ ('a', 'b', 'c', 'd')
当您不需要在插入元素之前保持对元组值的访问时,此方法很有用。
我们没有声明存储新元组的变量,而是为原始变量分配了一个新值。
您还可以通过将元组解包到新元组中来将项目插入到元组中。
主程序
my_tuple = ('a', 'b', 'c') new_tuple = (*my_tuple, 'd') print(new_tuple) # 👉️ ('a', 'b', 'c', 'd')
*可迭代解包运算符
使我们能够在函数调用、推导式和生成器表达式中解包可迭代对象。
主程序
example = (*(1, 2), 3) # 👇️ (1, 2, 3) print(example)
元组中的值被解压到一个新的元组中,我们可以在其中添加额外的元素。