Мне интересно, как поместить кортеж в массив? или лучше использовать массивы в массиве для разработки программы, а не кортежа в массиве? пожалуйста, советую мне. спасибо
Могу ли я поместить кортеж в массив в python?
Ответ 1
Следует иметь в виду, что tuple является неизменным. Это означает, что после его создания вы не можете изменить его на месте. A list, с другой стороны, является изменяемым - это означает, что вы можете добавлять элементы, удалять элементы и изменять элементы на месте. В списке есть дополнительные накладные расходы, поэтому используйте только список, если вам нужно изменить значения.
Вы можете создать список кортежей:
>>> list_of_tuples = [(1,2),(3,4)]
>>> list_of_tuples
[(1, 2), (3, 4)]
или список списков:
>>> list_of_lists = [[1, 2], [3, 4]]
>>> list_of_lists
[[1, 2], [3, 4]]
Разница в том, что вы можете изменять элементы в списке списков:
>>> list_of_lists[0][0] = 7
>>> list_of_lists
[[7, 2], [3, 4]]
но не со списком кортежей:
>>> list_of_tuples[0][0] = 7
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment
Чтобы перебрать список кортежей:
>>> for (x,y) in list_of_tuples:
... print x,y
...
1 2
3 4
Ответ 2
если вы говорите о list
, вы можете поместить в него что угодно, даже разные типы:
l=[10,(10,11,12),20,"test"]
l[0] = (1,2,3)
l.append((4,5))
l.extend((21,22)) #this one adds each element from the tuple
если вы имеете в виду array
, python array не поддерживает кортежи.
Ответ 3
a = [ ('b', i , "ff" ) for i in range(1,5)]