Простые инструкции

Простые инструкции - это наборы выражений, которые записываются в одну строку. Если есть необходимость записать несколько простых инструкций в одну строку, то их нужно разделять символом ";"

Рассмотрим встроенные простые инструкции:

  • yield в действительности является выражением, а не инструкцией. Выражение обычно занимает отдельную строку, и потому оно было включено в табл.
  • print не является ни зарезервированным словом, ни инструкцией – это встроенная функция. Однако она практически всегда занимает отдельную строку в программе - потому была включена в таблицу.
  • если в одной строке нужно записать несколько инструкций - они разделяются знаком ";" (но это плохой стиль написания кода);
help(print)
Инструкция присваивания
  • Инструкция присваивания создает ссылку на объект;
  • Переменные создаются при первом присваивании;
  • Прежде чем переменную можно будет использовать, ей должно быть присвоено значение;
  • Некоторые инструкции неявно тоже выполняют операцию присваивания. Например, далее мы увидим, что импорт модуля, определение функции или класса, указание переменной в цикле for и передача аргументов функции неявно выполняют присваивание.
Рассмотрим способы присваивания:


Консольный вывод
Функция print выводит заданные объекты на стандартное устройство вывода (экран) или отправляет их текстовым потоком в файл.
print("Привет")
print("Мир!")
Формат вызова: print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)

Обязательные аргументы:

  • value - список объектов, которые нужно отправить в поток вывода
Необязательные аргументы:

  • file: поток для вывода информации, по умолчанию sys.stdout (консоль);
  • sep: строка для разделения списка объектов, по умолчанию пробел;
  • end: строка добавляемая в конце списка объектов, по умолчанию перевод на новую строку;
  • flush: .
Обратите внимание что каждая инструкция print, по умолчанию выводит объекты с новой строки, а список объектов разделяется пробелами, чтобы переопределить это поведение используйте аргументы sep и end:
print("Привет", "Мир!", end=' ')
print('Python', 'в', 'здании', sep='_')
Аргументы file и flush. По умолчанию вывод данных происходит в стандартное устройство вывода sys.stdout, т.е в консоль, в которой запущен py скрипт. Чтобы переопределить поток вывода используйте аргумент file:
my_log = open('my_log.txt', 'w')
print("Привет", "всем!", end=' ', file=my_log)
print('Python', 'в', 'здании!', sep='_', file=my_log)
my_log.close()
В результате будет создан файл my_log.txt с переданным текстом.

Аргумент flush менее очевиден. Ввиду того, что вывод в файл буферизируется, данные, записываемые в файл могут не сразу попасть в файловую систему. Для форсирования записи текущего содержимого в файл - можно использовать аргумент flush или дожидаться закрытия файла file.close().
my_log = open('my_log.txt', 'w')
print("Привет", "всем!", end=' ', file=my_log)
print('Python', 'в', 'здании!', sep='_', file=my_log, flush=True)
print('Всем оставаться на своих местах!')
my_log.close(
Вторая инструкция print иницирует принудительнную запись текущих данных из буфера ("Привет всем! Python_в_здании!") в файл не дожидаясь инструкции file.close(). Далее третья инструкция снова добавит данные в буфер, а инструкция file.close() запишет оставшиеся данные из буфера в файл.
Консольный ввод
Формат вызова: input(prompt=None)

Считывает строку из консоли, удаляет знак переноса в конце строки.

Необязательные аргументы:

  • prompt - строка приглашения к вводу, выводится в консоль

Инструкция создает дополнительный поток, который останавливает выполнение программы и ожидает ввода из консоли, при этом не блокируя основной поток python.
value = input('Введите строку:')
print('Ваша строка:', value)
Обратите внимание на то что считываемые из консоли значения всегда поступают в виде строки, это значит что если вам нужно получить число, то используйте преобразование к типу числа иначе получите ошибку, пытаясь работать с текстом как с числом:
a = input()
print(a + 2)
Переменая "a" хранит объект с типом строка, операция сложения между строкой и числом вызовет исключение TypeError. Используйте приведение типов:
a = int(input()) # привести к целочисленному типу
b = float(input()) # привести к типу с плавающей точкой
print('Оперция сложения целых чисел:', a + 2)
print('Операция сложения дробных чисел:', b + 0.75)
Инструкция комментирования
Инструкции комментариев игнорируются интерпретатором и необходимы скорее для программиста чем для машины. Python предоставляет широкие возможности использования инструкци комментирования:

Рассмотрим варианты использования комментариев:
Обычная практика

Довольно часто начинать Python-файл начинается с нескольких строк комментариев. В этих строках указывается информация о проекте, назначении файла, программисте, который его разработал или работал над ним, и лицензии на программное обеспечение, которое используется для кода. Пример: