列表和元组是 Python 中最常用的数据类型 。Python 中的tuple数据类型与list相似,但有一点不同,即 tuple 的元素值不能被修改,而且 tuple 项目被放在小括号之间,而不是方括号。
要把Python list 转换为 tuple,请使用 **tuple()**方法。
Python 元组到列表
要在Python 中把 元组转换为列表,使用**list()**方法。 **list()**是一个内置的 Python 方法,它接受一个元组作为参数并返回列表。**list()**接受序列类型并将其转换为列表。
语法
list(sequence)
参数
序列是一个将被转换为列表的元组。
返回值
list()方法返回列表。
例子
tup = (21, 19, 11, 46, 18)
print(tup)
lt = list(tup)
print(lt)
输出
(21, 19, 11, 46, 18)
[21, 19, 11, 46, 18]
你可以看到 list() 方法已经将一个元组转换为一个列表,而且所有的元组元素都是完整的。
将一个图元组的列表转换成一个列表
要将一个 图元 组的 列表 转换为一个列表,请使用列表 理解。当你想根据现有列表的值创建一个新的列表时,列表理解提供了一个更短的语法。
# List of tuple initialization
listoftuples = [("Apple", 1), ("Microsoft", 2), ("Amazon", 3)]
# Using list comprehension
out = [item for t in listoftuples for item in t]
# Printing output
print(out)
输出
['Apple', 1, 'Microsoft', 2, 'Amazon', 3]
使用列表理解,我们可以将一个图元的列表转换为一个单一的列表。
你也可以使用**itertools.chain()**方法将一个图元的列表转换为一个列表。
# Importing itertools
import itertools
# List of tuple initialization
tuple = [(11, 21), (31, 41), (51, 61)]
# Using itertools
out = list(itertools.chain(*tuple))
# Printing output
print(out)
输出
[11, 21, 31, 41, 51, 61]
使用for循环和append()将图元组转换为列表
创建一个空的列表,使用 **append()**方法一次填入一个元组元素,并将元组元素传递给for循环体中的函数,迭代所有元组元素。
# app.py
def convert_tuple_to_list(tup):
brand_new_list = []
for element in tup:
brand_new_list.append(element)
return brand_new_list
tupl = (1, 2, 8, 11)
print(convert_tuple_to_list(tupl))
tupl_2 = ('Vecna', 'Bob', 'Kali', 'Eleven')
print(convert_tuple_to_list(tupl_2))
tupl_3 = (11, )
print(convert_tuple_to_list(tupl_3))
输出
[1, 2, 8, 11]
['Vecna', 'Bob', 'Kali', 'Eleven']
[11]
列表append()方法将一个元素追加到列表的末尾。
使用星号(*)运算符
使用 Python 3.5 中的解包星号运算符 *,使用表达式**[*t]**用方括号符号创建一个新的 list,并将 tuple t 的所有元素解包到该 list 中。
# app.py
def convert_tuple_to_list(tup):
return [*tup]
tupl = (1, 2, 8, 11)
print(convert_tuple_to_list(tupl))
tupl_2 = ('Vecna', 'Bob', 'Kali', 'Eleven')
print(convert_tuple_to_list(tupl_2))
tupl_3 = (11, )
print(convert_tuple_to_list(tupl_3))
输出
[1, 2, 8, 11]
['Vecna', 'Bob', 'Kali', 'Eleven']
[11]
**[*tup]**是 Python 中将元组转换为列表的最简洁的单行代码。
总结
在 Python 中使用 list() 方法将一个元组转换为一个列表。 **list()和tuple()**在给定一个可迭代对象,如 list、tuple、set、range 等时,会返回一个新的 list 和 tuple。本教程就到此为止。
参见
The postHow to Convert Python Tuple to Listappeared first onAppDividend.