Python 3 для начинающих самоучитель – Учебник по Python 3 | ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)

Уроки по Python для начинающих

Уроки по Python для начинающих на BUNKERBOOK.RU.

Что такое Python?

Python — это мощный высокоуровневый объектно-ориентированный язык программирования, созданный Guido van Rossum и впервые выпущенный в 1991 году. Имя Python получено из телевизионного сериала «Летающий цирк» Monty Python, и обычно используется ссылка Monty Python в примере кода. Этот язык теперь один из самых популярных языков в жизни. Этот язык теперь один из самых популярных языков в жизни. С 2003 года Python последовательно входит в десятку самых популярных языков программирования, как это измеряется индексом сообщества TIOBE.


Его синтаксис очень чистый, с акцентом на читаемость и использует стандартные английские ключевые слова . Основное понимание любого из языков программирования — плюс. Более того, опытный разработчик на любом языке программирования может быстро подобрать Python.

Python — это кросс-платформенный язык программирования, то есть он работает на нескольких платформах, таких как Windows, Mac OS X, Linux, Unix и даже был перенесен на виртуальные машины Java и .NET. Устные переводчики Python доступны для многих операционных систем, что позволяет использовать код Python в самых разных системах. Большинство реализаций Python (включая CPython) включают цикл read-eval-print (REPL), что означает, что они могут функционировать как интерпретатор командной строки, для которого пользователь вводит операторы последовательно и немедленно получает результаты. Дизайн Python предлагает некоторую поддержку функционального программирования в традиции Lisp .

Python — действительно захватывающий и мощный язык. Он имеет правильное сочетание производительности и функций, которые делают письма на Python интересными и легкими.

Введение в программирование на Python

Основы Python

Операции потока управления Python

Структуры данных Python

Работа с файлами и каталогами с помощью Python

Сетевое программирование на Python

Программирование на Python

Интервью и ответы на Python

By kametoh Уроки по Python

MonkeyPatch - это часть кода программирования, которая расширяет или изменяет другой код во время выполнения. Это означает, что он вносит изменения в модуль или класс во время работы программы. Это не стандартная методика разработки программного обеспечения. Это просто динамическая замена атрибутов во время выполнения. По-прежнему является обходным решением для решения острой проблемы и имеет явные

By kametoh Уроки по Python

При работе над программированием на Python вы неизбежно сталкиваетесь с ситуациями, когда вам приходится выполнять некоторые манипуляции с данными. В большинстве случаев вы используете контрольные инструкции для получения желаемого результата, но эти управляющие операторы могут быстро стать немного грязными и большими. Функциональные методы могут помочь вам написать более декларативный код, который легче понять с первого

By kametoh Уроки по Python

Лямбда, 11-я буква греческого алфавита, является символом длины волны. Лямбда исходит из исчисления Лямбды и относится к анонимным функциям программирования. В Python Lambda является выражением. Тело Лямбды - это одно выражение, а не блок утверждений. Поскольку он ограничен выражением, лямбда является менее общей, чем def, вы можете только сжать столько логики в тело лямбда без

By kametoh Уроки по Python

В Python вы просто не можете убить Thread. Убийство нити устраняет любые гарантии, которые пытаются установить / окончательно блокировать, чтобы вы могли заблокировать блокировки, открыть файлы и т. д. Обычно это плохой шаблон, чтобы убить поток внезапно, на Python и на любом языке. Лучше вы можете использовать модуль многопроцессорности , который почти то же самое

By kametoh Уроки по Python

Нить процесса означает сегмент кода процесса, который имеет свой собственный идентификатор потока, счетчик программ, регистры и стек и может выполняться независимо. Нить исполнения - это наименьшая последовательность запрограммированных команд, которые могут управляться независимо планировщиком, который обычно является частью операционной системы. Многопоточность - это тип модели выполнения, которая позволяет использовать несколько потоков в контексте. Что такое

bunkerbook.ru

Python. Введение в программирование. Курс для начинающих

Курс "Python. Введение в программирование". Рассчитан на старшеклассников и всех желающих познакомиться с программированием. Включает серию уроков, знакомящих с базовыми типами данных, принципами и понятиями структурного программирования. В курсе используется версия языка ветки 3.x.

Выбор Python обусловлен тем, что он обладает такими преимуществами перед другими языками для начинающих изучать программирование как ясность кода и быстрота реализации.

Курс рассчитан на 20-25 часов. Не является всеохватывающим справочным пособием по языку программирования Python.

Основной целью курса является знакомство с программированием, формирование базовых понятий структурного программирования, подготовка к последующему изучению объектно-ориентированного программирования.

Текущая версия курса: апрель 2018 г.

Вы можете приобрести android-приложение или pdf-версию курса с ответами и пояснениями к практическим работам. 

Программа курса

Что такое языки программирования, их историческое развитие, способы трансляции программного кода, базовые типы и структуры данных (целые и вещественные числа, строки, списки, кортежи, словари), переменные, условный оператор, исключения и их обработка, циклы, функции и модули, ввод и вывод данных, в том числе работа с файлами.

1. Краткая история языков программирования
История программирования в кратком и понятном изложении. Что такое машинный язык, почему появились ассемблеры, языки высокого уровня и объектно-ориентированные. Зачем нужен транслятор, и почему он может быть либо компилятором, либо интерпретатором.
2. Знакомство с Python
Особенности языка Python, работа в интерактивном режиме и подготовка файлов с исходным кодом.
3. Типы данных. Переменные
Базовые типы данных в Python: целое, вещественное числа, строки. Изменение типа данных с помощью встроенных функций. Понятие об операциях и переменных. Присваивание значения переменной.
4. Ввод и вывод данных
Для вывода на экран в Python 3.x используется функция print(). Вывод может быть предварительно отформатирован. Для ввода данных с клавиатуры используется функция input(), которая возвращает в программу строку.
5. Логические выражения и операторы
Логические выражения. Логические операторы языка Python: == (равно), != (не равно), (больше), = (больше или равно), and (логическое И), or (логическое ИЛИ), not (отрицание).
6. Ветвление. Условный оператор
Ветвление в Python реализуется с помощью условный оператора if-else. Ветка if выполняется если условие верно, необязательная ветка else - в остальных случаях.
7. Ошибки и исключения. Обработка исключений
Общее представление об ошибках и исключениях в языке программирования Python. SyntaxError, NameError, TypeError, ValueError, ZeroDivisionError. Обработка исключений с помощью инструкции try-except.
8. Множественное ветвление: if-elif-else
Оператор множественного ветвления языка Python позволяет организовать более двух веток выполнения программы без необходимости вложения условных операторов друг в друга. Конструкция включает одну ветку if, произвольное количество elif и необязательную ветку else.
9. Циклы в программировании. Цикл while
С помощью циклов в программировании организуется многократное следующее друг за другом выполнение одних и тех же участков кода. Бывают циклы с условием и со счетчиком. К первым относится цикл while, или цикл "пока". 
10. Функции в программировании
Функции - важный элемент структурного программирования. Они позволяют обособить участок кода, выполняющий определенную задачу. В дальнейшем к нему можно обращаться из разных мест программы по имени, которым он назван. В языке Python функции определяются с помощью оператора def.
11. Локальные и глобальные переменные
В программировании важное значение имеет представление о локальных и глобальных переменных. Локальные переменные существуют внутри функций и не доступны за ее пределами. Глобальные переменные видны во всей программе. 
12. Возврат значений из функции. Оператор return
С помощью оператора return можно вернуть значение из тела функции в основную программу. В языке программирования Python можно вернуть несколько значений, перечислив их через запятую после оператора return. Также в функции может быть несколько return, но всегда выполняется только один из них.
13. Параметры и аргументы функции
Если функция имеет параметры, то при вызове в нее можно передавать данные в виде аргументов-значений или аргументов-ссылок. Параметры перечисляются в заголовке функции в скобках после имени, представляют собой локальные переменные. В Python тип параметров не указывается, хотя в других языках это может быть обязательным требованием.
14. Встроенные функции
Язык программирования Python включает множество встроенных функций. В предыдущих уроках мы использовали такие функции как print() и input(), а также функции преобразования типов данных. В этом уроке рассматриваются встроенные функции для работы с символами и числами.
15. Модули
Использование модулей в программировании позволяет изолировать код, выполняющий частные задачи, в отдельные файлы. После чего обращаться к нему из разных программ. Создание модулей - следующий шаг после функций, когда участок кода обособляется внутри одного файла-программы. Для языка Python есть множество встроенных и сторонних модулей. 
16. Генератор псевдослучайных чисел – random
Для генерации псевдослучайных чисел в языке программирования Python используются функции модуля random. Функция random() генерирует вещественное число от 0 до 1. Функции randint() и randrange() производят целые псевдослучайные числа в указанных диапазонах.
17. Списки
Списки в Python - это аналог массивов в других языках программирования. Однако список может содержать элементы разных типов. В терминологии Python список - это изменяемая упорядоченная структура данных. Можно заменять его элементы, добавлять и удалять их, брать срезы. В язык встроены методы для работы со списками.
18. Цикл for
Цикл for в языке программирования Python предназначен для перебора элементов структур данных (списков, словарей, кортежей, множеств) и многих других объектов. Это не цикл со счетчиком, каковым является for во многих других языках. Нередко цикл for используется совместно с функцией range(), генерирующей объекты-диапазоны.
19. Строки
В Python строки - это неизменяемые последовательности символов или подстрок. Из них, так же как из списков, можно извлекать отдельные символы с помощью индексов или подстроки с помощью взятия срезов. В языке Python есть множество встроенных строковых методов, позволяющих упростить обработку строк.
20. Кортежи
Кортежи в Python - это неизменяемые структуры данных, состоящие из элементов одного или разных типов. Кортежи подобны спискам и обычно используются для защиты последних от изменений. Преобразование одного в другой выполняется с помощью встроенных функций tuple() и list().
21. Словари
Словарь в Python - это изменяемая неупорядоченная структура данных, элементами которой являются пары "ключ:значение". В словари можно добавлять и удалять элементы, изменять значения ключей. В Python словари имеют ряд методов, упрощающих работу с ними. 
22. Файлы
В языке программирования Python открытие файлов выполняется с помощью функции open(), которой передается два аргумента - имя файла и режим. Файл может быть открыт в режиме чтения, записи, добавления. Также может быть указан тип файла - текстовый или бинарный. Для файлов есть ряд встроенных методов чтения, записи и др.
Итоги курса "Python. Введение в программирование"
В этом курсе были изучены основы структурного программирования, в качестве инструмента использовался язык Python. Были рассмотрены встроенные типы данных, ветвления и циклы, обработчик исключений, функции, работа с модулями. Одной из целей курса является подготовка к изучению объектно-ориентированного программирования.

Старая версия курса

PDF. Основы программирования на Python. Версия 2 (2011)

Сборник презентаций по теме "Основы программирования на Python" 
(rar, 15 презентаций, 1.7 Mb)
Презентации: "Языки программирования, этапы их развития. Интерпретация и компиляция.", "Введение в Python", "Дзэн Питона", "Переменные и данные в языке программирования Python", "Логические выражения", "Ветвление в программе. Инструкция if.", "Множественное ветвление. Инструкция if-elif-else", "Цикл while", "Ввод данных с клавиатуры", "Последовательности: строки", "Последовательности: списки", "Введение в словари", "Цикл for", "Программирование функций", "Параметры и аргументы функций. Локальные и глобальные переменные".

younglinux.info

Уроки Python | Сложные условия

Уроки Python 3 - Сложные условия

В прошлых уроках мы узнали что такое переменные, их типы, а также начали изучать условный оператор if/else. Постараемся закрепить полученные знания, написав несколько несложных программ. Если вам нужно определить наличие какого-то слова или словосочетания в строке, можно использовать в условии ключевое слово IN. Допустим, у нас есть в виде строки список гостей, которых мы пригласили на какое-то мероприятие. Напишем программу, которая будет искать имя в этом списке, и если оно есть, пропускать гостей в ресторан.

s='Елена Малышева, Дмитрий Нагиев, Андрей Малахов, Иосиф Кобзон, Гарик Мартиросян'
x=input('Введите ваше имя: ')
if(x in s):
    print('Добро пожаловать на праздник!')
else:
    print('Извините, но вас нет в списке гостей')
В данном примере мы проверили наличие подстроки x в строке s, если она там есть, то условие выполняется, если нет - управление передается блоку команд после ELSE. Давайте сделаем простейший текстовый квест - игру, где нужно делать выбор из нескольких вариантов развития событий.
print('Вы проснулись на космическом корабле, ничего не понимаете, ваши действия?')
x=input('Введите 1 чтобы связаться с Землёй, 2 чтобы осмотреть корабль')
if(x=='1'):
    print('Земля не отвечает, в эфире помехи и чья-то ругань...')
    y=input('Введите 1 чтобы подать сигнал SOS, 2 чтобы нажать большую красную кнопку на пульте')
    if(y=='1'):
        print('После долгого ожидания, ваш сигнал был услышан, и за вами послали команду спасения.')
    else:
        print('После нажатия кнопки на Землю была сброшена кварковая бомба, вы случайно уничтожили родную планету, и застрелились, поняв это.')
else:
    print('Все каюты на корабле пусты, вы один, и не умеете управлять кораблём')
    y=input('Введите 1 чтобы попробовать включить автопилот, 2 чтобы подать сигнал SOS')
    if(y=='1'):
        print('После включения автопилота, вы стартовали в неизвестном направлении, и вскоре умерли от голода, не обнаружив на борту ничего съестного.')
    else:
        print('После долгого ожидания, ваш сигнал был услышан, и за вами послали команду спасения.')
Можно делать такие текстовые квесты гораздо более интересными и сложными. Зная только условный оператор, мы написали с вами простейшую текстовую игру. Если эта программа кажется вам слишком сложной, постарайтесь вникнуть в неё, прочитав несколько раз, и проследив логику выбора того или иного действия. Здесь внутрь блоков действий одного условного оператора if/else вложено еще по одному оператору if/else, которые в свою очередь, задают собственные условия. Попробуйте скопировать пример в IDLE и поиграть в текстовый квест, вводя цифры 1 или 2 и нажимая Enter. Если вам необходимо инвертировать ваше условие, используйте ключевое слово NOT. Например мы хотим чтобы человек ввёл число НЕ(NOT) больше 10.
x=int(input('Введите число'))
if(not(x>10)):
    print('Всё верно, число НЕ больше десяти')
else:
    print('К сожалению, ваше число больше десяти.')
И еще один пример по составлению сложного условия:
Если ( ( (машина=='есть') ИЛИ (деньги=='много') ) И (вы=='красивый') ):
    print('Девушка с дискотеки будет ваша.')
Иначе:
    print('Вам ничего не светит')
Переведем всё это условие на язык Python
if(((car==1) or (money>10000)) and (beauty==1)):
    print('Девушка с дискотеки будет ваша.')
else:
    print('Вам ничего не светит')
Попробуйте усложнить условие добавив каких-то факторов, например если девушка достаточно пьяна, или если вы хорошо танцуете и.т.д. Домашнее задание (которое не является обязательным, но поможет вам закрепить знания) Сделайте программу которая вычисляет ваш идеальный вес, в зависимости от роста и возраста. Найдите формулу для вычисления идеального веса в гугле, и реализуйте условие для расчёта идеального веса. Составьте программу, которая проведёт несложный тест, один из психологических тестов, которых полно в женских журналах, и развлекательных сайтах. В зависимости от результатов вашего выбора, программа должны вынести какой-то вердикт на тему вашего характера. Сделайте более сложную текстовую игру с вашим сюжетом. Уроки Python | Сложные условия Иван Леднев
Если у вас есть Android телефон, вы можете скачать наш учебник по Python

pythono.ru

Кортежи (tuple) | Python 3 для начинающих и чайников

Сегодня я расскажу о таком типе данных, как кортежи (tuple) и о том, где они применяются.

Кортеж, по сути - неизменяемый список.

Зачем нужны кортежи, если есть списки?

  • Защита от дурака. То есть кортеж защищен от изменений, как намеренных (что плохо), так и случайных (что хорошо).
  • Меньший размер. Дабы не быть голословным:
>>> a = (1, 2, 3, 4, 5, 6)
>>> b = [1, 2, 3, 4, 5, 6]
>>> a.__sizeof__()
36
>>> b.__sizeof__()
44
  • Возможность использовать кортежи в качестве ключей словаря:
>>> d = {(1, 1, 1) : 1}
>>> d
{(1, 1, 1): 1}
>>> d = {[1, 1, 1] : 1}
Traceback (most recent call last):
  File "", line 1, in
    d = {[1, 1, 1] : 1}
TypeError: unhashable type: 'list'

Как работать с кортежами?

С преимуществами кортежей разобрались, теперь встает вопрос - а как с ними работать. Примерно так же, как и со списками.

Создаем пустой кортеж:

>>> a = tuple() # С помощью встроенной функции tuple()
>>> a
()
>>> a = () # С помощью литерала кортежа
>>> a
()
>>>

Создаем кортеж из одного элемента:

>>> a = ('s')
>>> a
's'

Стоп. Получилась строка. Но как же так? Мы же кортеж хотели! Как же нам кортеж получить?

>>> a = ('s', )
>>> a
('s',)

Ура! Заработало! Все дело - в запятой. Сами по себе скобки ничего не значат, точнее, значат то, что внутри них находится одна инструкция, которая может быть отделена пробелами, переносом строк и прочим мусором. Кстати, кортеж можно создать и так:

>>> a = 's',
>>> a
('s',)

Но все же не увлекайтесь, и ставьте скобки, тем более, что бывают случаи, когда скобки необходимы.

Ну и создать кортеж из итерируемого объекта можно с помощью все той же пресловутой функции tuple()

>>> a = tuple('hello, world!')
>>> a
('h', 'e', 'l', 'l', 'o', ',', ' ', 'w', 'o', 'r', 'l', 'd', '!')

Операции с кортежами

Все операции над списками, не изменяющие список (сложение, умножение на число, методы index() и count() и некоторые другие операции). Можно также по-разному менять элементы местами и так далее.

Например, гордость программистов на python - поменять местами значения двух переменных:

a, b = b, a

pythonworld.ru