Библиотека Pygame / Часть 1. Введение
Pygame — это «игровая библиотека», набор инструментов, помогающих программистам создавать игры.
Смотреть статью
Pygame — это «игровая библиотека», набор инструментов, помогающих программистам создавать игры.
Смотреть статью
PythonRu
Как писать игры на Python с Pygame. Введение ~ PythonRu
Это первая часть серии руководств «Разработка игр с помощью Pygame». Она предназначена для программистов начального и среднего уровней, которые
Модуль pytz
Модуль pytz обслуживает функции преобразования даты и времени. Таким образом, позволяет пользователям обслуживать международную клиентскую базу.
В примере выше мы узнаем дату и время конкретного часового пояса.
С документацией пакета вы можете ознакомиться здесь.
Модуль pytz обслуживает функции преобразования даты и времени. Таким образом, позволяет пользователям обслуживать международную клиентскую базу.
В примере выше мы узнаем дату и время конкретного часового пояса.
С документацией пакета вы можете ознакомиться здесь.
Копирование объектов
При стандартном присваивании обычно новый объект не создается, а лишь копируется ссылка на уже имеющийся. Если использовать
Если же использовать
При стандартном присваивании обычно новый объект не создается, а лишь копируется ссылка на уже имеющийся. Если использовать
copy.copy()
, произойдет поверхностное копирование, т.е. создастся новый объект, но его ссылки на другие объекты будут те же.Если же использовать
copy.deepcopy()
, то получатся "настоящие" копии объекта и всех его ссылок.Получаем текущее имя пользователя в Python
Модуль ОС в Python предоставляет функции для взаимодействия с операционной системой. ОС входит в стандартные служебные модули Python. Этот модуль предоставляет портативный способ использования функций, зависящих от операционной системы.
Метод os.getlogin() в Python используется для получения имени пользователя, вошедшего в систему на управляющем терминале процесса.
Модуль ОС в Python предоставляет функции для взаимодействия с операционной системой. ОС входит в стандартные служебные модули Python. Этот модуль предоставляет портативный способ использования функций, зависящих от операционной системы.
Метод os.getlogin() в Python используется для получения имени пользователя, вошедшего в систему на управляющем терминале процесса.
Сортировка вставками
Как и сортировка выборкой, этот алгоритм сегментирует список на две части: отсортированную и неотсортированную. Алгоритм перебирает второй сегмент и вставляет текущий элемент в правильную позицию первого сегмента.
Предполагается, что первый элемент списка отсортирован. Переходим к следующему элементу, обозначим его х. Если х больше первого, оставляем его на своём месте. Если он меньше, копируем его на вторую позицию, а х устанавливаем как первый элемент.
Переходя к другим элементам несортированного сегмента, перемещаем более крупные элементы в отсортированном сегменте вверх по списку, пока не встретим элемент меньше x или не дойдём до конца списка. В первом случае x помещается на правильную позицию.
Время сортировки вставками в среднем равно O(n²), где n — количество элементов списка.
Как и сортировка выборкой, этот алгоритм сегментирует список на две части: отсортированную и неотсортированную. Алгоритм перебирает второй сегмент и вставляет текущий элемент в правильную позицию первого сегмента.
Предполагается, что первый элемент списка отсортирован. Переходим к следующему элементу, обозначим его х. Если х больше первого, оставляем его на своём месте. Если он меньше, копируем его на вторую позицию, а х устанавливаем как первый элемент.
Переходя к другим элементам несортированного сегмента, перемещаем более крупные элементы в отсортированном сегменте вверх по списку, пока не встретим элемент меньше x или не дойдём до конца списка. В первом случае x помещается на правильную позицию.
Время сортировки вставками в среднем равно O(n²), где n — количество элементов списка.
Создаем бесконечный итератор
Функция
Фишка в том, что когда элементы последовательности заканчиваются, итерация начинается вновь с первого элемента.
Но если вы проходитесь циклом по такому итератору, то важно предусмотреть выход из цикла, иначе он станет бесконечным (как у нас в первом случае на картинке).
Мы также можем воспользоваться
Функция
cycle()
из модуля itertools
принимает на вход итерируемый объект и создает бесконечный итератор, циклически возвращающий элементы данного объекта.Фишка в том, что когда элементы последовательности заканчиваются, итерация начинается вновь с первого элемента.
Но если вы проходитесь циклом по такому итератору, то важно предусмотреть выход из цикла, иначе он станет бесконечным (как у нас в первом случае на картинке).
Мы также можем воспользоваться
islice()
, который вернет итератор по подмножеству переданного объекта.defaultdict
Класс defaultdict() модуля collections ни чем не отличается от обычного словаря за исключением того, что по умолчанию всегда вызывается функция, которая возвращает значение по умолчанию для новых значений. Другими словами Класс defaultdict() представляет собой словарь со значениями по умолчанию.
Подробнее с классом можно ознакомиться здесь.
Класс defaultdict() модуля collections ни чем не отличается от обычного словаря за исключением того, что по умолчанию всегда вызывается функция, которая возвращает значение по умолчанию для новых значений. Другими словами Класс defaultdict() представляет собой словарь со значениями по умолчанию.
Подробнее с классом можно ознакомиться здесь.
Определяем язык текста
В данном посте покажем, как с помощью библиотеки langdetect определить язык текстового фрагмента. Для начала необходимо поставить библиотеку - pip install langdetect.
Заметим, что код импортирован на питон из гугловской библиотеки language-detection, поэтому качество распознавания языка находится на уровне.
По умолчанию поддерживается 55 языков.
В данном посте покажем, как с помощью библиотеки langdetect определить язык текстового фрагмента. Для начала необходимо поставить библиотеку - pip install langdetect.
Заметим, что код импортирован на питон из гугловской библиотеки language-detection, поэтому качество распознавания языка находится на уровне.
По умолчанию поддерживается 55 языков.