Введение в Python (Красота) - страница 7


В результате вы увидите следующее



Списки в Python:

Списки, пожалуй, самый универсальный составной тип данных в Python. Список состоит из элементов, разделенных запятыми, находящихся между квадратными скобками ( [ ] ). В определенной мере, списки подобны массивам в C. Единственной разницей является то, что элементы одного списка могут иметь разные типы данных.

Получить доступ к элементам, сохраненным в списке можно, точно так же, как и в строках, при помощи оператора нарезки ( [ ] и [:] ) и индексов, начиная с нуля и до конца. Знак плюс ( + ) объединяет два списка, а звездочка ( * ) - оператор повторения для списка. Например:


>1 | my_list =[True, 786, 3.14, 'text', 70.2]

>2 | second_list = [123, 'text']

>3 |

>4 | print my_list # Напечатает весь список

>5 | print my_list[0] # Напечатает первый элемент списка

>6 | print my_list[1:3] # Напечатает элементы списка со второго по третий

>7 | print my_list[2:] # Напечатает элементы списка начиная с третьего

>8 | print second_list * 2 # Напечатает удвоенный список

>9 | print my_list + second_list # Напечатает объединенные списки


В результате вы увидите:


>| [True, 786, 3.14, 'text', 70.2]

>| True

>| [786, 3.14]

>| [3.14, 'text', 70.2]

>| [123, 'text', 123, 'text']

>| [True, 786, 3.14, 'text', 70.2, 123, 'text']


Кортежи в Python:

Кортеж это еще один составной тип данных, похожий на список. Кортеж состоит из ряда значений, разделенных запятыми, заключенными в круглые скобки ( ( ) ). Основным различием между списками и кортежами является то, что элементы кортежей не могут быть изменены. То есть, кортежи можно рассматривать как списки доступные только для чтения.

Если у вас нет необходимости изменять элементы списка, то для экономии места в памяти лучше использовать тип данных кортеж.


>1 | my_tuple =(True, 786, 3.14, 'text', 70.2)

>2 | second_tuple = (123, 'text')

>3 |

>4 | print my_tuple # Печатает весь кортеж

>5 | print my_tuple[0] # Печатает первый элемент

>6 | print second_tuple * 2 # Печатает удвоенный кортеж

>7 | print my_tuple + second_tuple # Печатает объединенные кортежи


В результате вы получите:

>| (True, 786, 3.14, 'text', 70.2)

>| True

>| (123, 'text', 123, 'text')

>| (True, 786, 3.14, 'text', 70.2, 123, 'text')


При этом, следующие действия доступны для списков и недоступны для кортежей:


>1 | my_list = ["Rome", 23, ["cat", "dog"], True, 3.14]

>2 | my_tuple = ("Rome", 23, ["cat", "dog"], True, 3.14)

>3 | my_list[0] = "Paris" # Замена значения первого элемента сработает для списка

>4 | my_tuple[0] = "Paris" # Та же операция для кортежа вызовет ошибку


Словари в Python: