在 Python 中向元组中插入一个元素

在 Python 中向元组中插入一个元素

Insert an element into a Tuple in Python

要在 Python 中将元素插入到元组中:

  1. 使用list()该类将元组转换为列表。
  2. 使用list.insert()方法将元素插入到列表中。
  3. 使用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)

元组中的值被解压到一个新的元组中,我们可以在其中添加额外的元素。

发表评论