Введение в Python - [4]
>13 | print text + "Nice to code you" # Выведет новую строку
>14 | print text[ -1] * 10 # Выведет 10 восклицательных знаков
В результате вы увидите следующее
Списки, пожалуй, самый универсальный составной тип данных в 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']
Кортеж это еще один составной тип данных, похожий на список. Кортеж состоит из ряда значений, разделенных запятыми, заключенными в круглые скобки ( ( ) ). Основным различием между списками и кортежами является то, что элементы кортежей не могут быть изменены. То есть, кортежи можно рассматривать как списки доступные только для чтения.
Если у вас нет необходимости изменять элементы списка, то для экономии места в памяти лучше использовать тип данных кортеж.
>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 это неотсортированная колекция элементов, доступ к которым осуществляется по ключу. То есть, каждому ключу словаря соответствует определенное значение. Ключом может быть любой неизменяемый тип данных (число, строка, кортеж), значением - любой тип данных.
Пары ключ, значение словаря заключаются в фигурные скобки ( { } ). Есть несколько способов создания словарей:
>1 | my_dict = { } # Создаем пустой словарь
>2 | my_dict["country"] = "Mexico" # Присваиваем ключу country значение Mexico
>3 | print my_dict["country"] # Выведет Mexico
>4 |
>5 | # Заполнение словаря при инициализации
>6 | another_dict = {"number":23, 2: True, "my_list":[1, 2, 3]}
>7 | print another_dict.keys() # Напечатает список всех ключей
>8 | print another_dict.values() # Напечатает список всех значений
Данный код выведет следующее:
Обратите внимание, что ключи и значения выводятся не в том порядке, в котором мы их задавали.
Сеты в Python:
Сет в Python это еще один изменяемый, коллекционный тип данных, отличительной чертой которого является то, что он хранит только уникальные значания.
Создать сеты можно следующими способами:
>1 | # Создание пустого сета
>2 | s = set()
>3 | # Создание сета инициализацией
>4 | s = {"hi", "bye"}
Для добавление элемента в сет используется метод add, для удаления - pop или remove. Добавление в сет уже существующего элемента не повлияет на сет. Сеты обладают множеством методов для работы с уникальными элементами, например difference - возвращает элементы сета отсутствующие в другом сете, intersection - наоборот, возвращает елементы сета присутствующие в другом сете.
Иногда может возникнуть необходимость преобразовать один тип данных в другой. Для этого существуют специальные встроенные функции Python. Вот некоторые из них:
Функция | Описание |
int(x [,base]) | Преобразовывает х в целое число. Например, int(12.4) -> 12 |
long(x [,base] ) | Преобразовывает х в long. Например, long(20) -> 20L |
float(x) | Преобразовывает х в число с плавающей точкой. Например float(10) -> 10.0 |
complex(real [,imag]) | Создает комплексное число. Например complex(20) -> (20+0j) |
str(x) | Преобразовывает х в строку. Например str(10) -> '10' |
tuple(s) | Преобразовывает s в кортеж. Например tuple("hello") -> ( "h","e","l","l","o" ) |
list(s) | Преобразовывает s в список. Например list("Python") -> ["P","y","t","h","o","n" ] |
dict(d) | Создает словарь из d. Например dict( [ (1,2), (3,4) ] ) -> { 1:2, 3:4 } |
Разработчику часто требуется много сторонних инструментов, чтобы создавать и поддерживать проект. Система Git — один из таких инструментов и используется для контроля промежуточных версий вашего приложения, позволяя вам исправлять ошибки, откатывать к старой версии, разрабатывать проект в команде и сливать его потом. В книге вы узнаете об основах работы с Git: установка, ключевые команды, gitHub и многое другое.В книге рассматриваются следующие темы:основы Git;ветвление в Git;Git на сервере;распределённый Git;GitHub;инструменты Git;настройка Git;Git и другие системы контроля версий.
Рассмотрено все необходимое для разработки, компиляции, отладки и запуска приложений Java. Изложены практические приемы использования как традиционных, так и новейших конструкций объектно-ориентированного языка Java, графической библиотеки классов Swing, расширенной библиотеки Java 2D, работа со звуком, печать, способы русификации программ. Приведено полное описание нововведений Java SE 7: двоичная запись чисел, строковые варианты разветвлений, "ромбовидный оператор", NIO2, новые средства многопоточности и др.
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.
Python - объектно-ориентированный язык сверхвысокого уровня. Python, в отличии от Java, не требует исключительно объектной ориентированности, но классы в Python так просто изучить и так удобно использовать, что даже новые и неискушенные пользователи быстро переходят на ОО-подход.