Установка системы и среда программирования
Существуют три известных реализации среды исполнения для Python: CPython, Jython и Python.NET. Первая среда реализована на языке C, вторая на языке Java, а последняя – на платформе .NET.
Для установка Python в ОС Windows необходимо скачать установочный файл (например, Python-2.3.3.exe), запустить его на своем компьютере и ответить на все вопросы программы установки, завершая ответ нажатием кнопки «Next». Сначала необходимо указать, куда интерпретатор должен быть установлен. По умолчанию он ставится в каталог C:\PythonXX, где XX – номер версии. На этом шаге достаточно нажать кнопку «Next». Далее программа спросит, нужно ли сохранять резервные копии заменяемых файлов. Если вы ставите Python впервые, то отметьте вариант «No, do not make backups».
Следующий шаг – выбор устанавливаемых компонентов. Лучше включить установку всего, что предлагается (в том числе, документацию). Полный комплект занимает на жестком диске порядка 20 мегабайт. Наконец, нужно задать название группы для главного меню. Можно просто нажать «Next» Программа покажет сводную информацию о том, что и куда будет установлено. Еще раз нажмите «Next» и дожидайтесь окончания установки. Нажмите «Finish» для выхода из программы установки.
В ОС Windows программы, написанные на Python запускаются при помощи “Проводника” выбирается файл, содержащий программу. Python при установке связывает расширение файла .py с интерпретатором Python, поэтому при двойном щелчке на таком файле будет запущен Python, который выполнит программу, записанную в файле. Если Ваша программа не имеет
графического интерфейса, то операционная система Windows откроет окно консоли. После завершения работы программы это окно будет сразу же закрыто, поэтому можно не успеть увидеть результат ее работы. Избежать этого можно, добавив в конце программы следующую строку:
raw_input("Press any key to exit")
Это заставит интерпретатор дождаться нажатия любой клавиши, прежде чем завершить программу. Если же вы задали другое расширение, то метод запуска двойным щелчком не сработает. В Windows программы на Python всегда должны иметь расширение .py или . pyw. Второй вариант отличается тем, что Python запускается «молча», то есть без открытия окна консоли. Расширение .pyw рекомендуется давать программам, имеющими графический интерфейс, которые не нуждаются в окне консоли вообще.
Другой вариант установки можно произвести с сайта
C сайта https://www.python.org/downloads/windows/ можно выбрать один из пунктов инсталляции
На Python 3.5.1 - 2015-12-07
· Скачать Windows для архитектуры x86 веб-установщик
· Скачать Windows для архитектуры x86 исполняемый файл установщика
Первый пункт для работы с интернет, а второй для локализации на компьютере.
После инсталляции на компьютере получится следующая экранная форма:
В поле “View” можно сменить настройки среды программирования
Среда разработки Pysharm
F1 – помощь.
F2/Shift+F2 – переход к следующей или предыдущей ошибке.
F4 – редактирование источника.
Alt+1 – переход на окно проектов
Alt+2 – переход на окно списка избранных программ
Alt+Shift+f – включение программы в список избранных программ.
Alt+4 – выход ипрограммы.
Ctrl+Shift+F4 – закрывает активное окно.
Ctrl+E –последний файл.
Ctrl+Shift+Backspace – переход к последнему месту редактирования.
Ctrl+Alt+Right(Left) – поворот экрана.
Alt+6 – открытые рабочего поля программы
Alt+7 – открытые рабочего поля структуры программы
Alt+F1 – открытые /закрытие окон Project, Structure, Changes и т.д.
Shift+Esc – скрывает активное окно.
Ctrl+Shift+a – определение имени действия или режима.
Ctrl+B – Переход к объявлению переменной, класса, метода
Alt+Shift+Down/Alt+Shift+Up – перемещение текущей строки вниз вверх.
Ctrl+h – иерархия наследования текущего класса и переход по ней.
Ctrl+tab – переход между вкладками и окнами инструментов.
Ctrl+s – сохранение программы
Ctrl+Alt+s – определяется поведение внешний вид среды
Ctrl+F12 – список методов с переходом к их объявлению.
Ctrl+Shift+F12 – переход на полно экранный режим работы с текстом программы.
Alt+F12 – переход на консольный режим
Сtrl+с/ Сtrl+ins – копирование
Сtrl+v/ Shift+ins – вставка
Ctrl+Alt+s – синхронизация
Alt+Shift+F10 – вызывает диалоговое окно для создания, редактирования или удаления конфигурации для запуска проекта. А также выбора настроек по умолчанию, которые будут применены к новым конфигурациям запуска проекта.
Alt+Shift+F10 – вызывает диалоговое окно для создания, редактирования или удаления конфигурации для отладки проекта. А также настроек по умолчанию, которые будут применены к новым конфигурациям отладки проекта.
Shift+F10 – запуск программы с текущей установленной конфигурацией.
Shift+F9 – запуск отладчика.
Ctrl+Shift+F10 – запуск программы с конфигурацией установленной по умолчанию.
CTRL + K – комментирование проекта в систему контроля версий. В случае отсутствия изменений выдается следующее окно.
CTRL + T – обновление проекта из системы контроля версий. После нажатия клавиши ОК при условии правильной привязки к репозиторию проект обновится.
Alt+Shift+C – отображение последних изменений файла в системе.
Alt+BackQuote(`) – панель операций системы управления версиями, позволяющий добавить в систему контроля версий, создать репозиторий для проекта, включить систему контроля версий, проверить с помощью контроля версий, показать историю.
Ctrl+Shift+J – объединяет строки
Ctrl+Enter – структурно разбивает строки
Shift+Enter – открытие новой строки с соответствующим позиционорированием
Ctrl+Shift+U – переход на выделенный фрагмент текста
Среда разработки IDLE
http://pythonworld.ru/osnovy/pervaya-programma-sreda-razrabotki-idle.html
http://www.ibm.com/developerworks/ru/library/l-python_part_1/index.html
http://window.edu.ru/resource/825/76825/files/python_structured_programming.pdf
Описание языка PYTHON
Исходный код Python состоит из логических строк, каждая из которых в свою очередь состоит из физических строк. Для обозначения комментариев используется символ #. Комментарии и пустые строки интерпретатор игнорирует.
В Python нет символа, отвечающего за отделение выражений друг от друга в исходном коде, как, например, точка с запятой (;) в C++ или Java. Символ «;» позволяет разделить несколько инструкций, находящихся на одной физической строке.
Физические строки выписываются построчно. Если выражение слишком длинное, то две физических строки можно объединить в одну логическую. Для этого в конце первой строки ввести символ обратного слеша (\), и тогда следующую строку интерпретатор будет трактовать как продолжение первой. При этом далее в строке за символом «\» ничего писать нельзя. Для выделения блоков кода используются отступы. Логические строки с одинаковым размером отступа формируют блок, и заканчивается блок при появлении логической строка с отступом меньшего размера. Поэтому первая строка в сценарии Python не должна иметь отступа.
Имеется стандартный набор операторов и ключевых слов. Используются стандартные правила задания идентификаторов переменных, методов и классов – имя должно начинаться с подчеркивания или латинского символа любого регистра и не может содержать символов @, $, %. Также не может использоваться в качестве идентификатора только один символ подчеркивания.
Имя переменной – последовательность латинских букв, знака “_” и цифр, начинающаяся с латинской буквы или знака “_”, не являющейся зарезервированныйм словом. Прописные и строчные латинские буквы различаются.
Зарезервированные слова
and | del | for | is | raise |
assert | elif | from | lambda | return |
break | else | global | not | try |
class | except | if | or | while |
continue | exec | import | pass | yield |
def | finally | in |
Типы данных, используемые в Python:
· Целые и вещественные типы данных;
· Комплексный тип данных с вещественной и мнимой частью (пример такого числа – 1.5J или 2j, где J представляет собой квадратный корень из -1);
· Строки, заключаемые в одинарные, двойные или тройные кавычки, не изменяющие свое значение после создания;
· Логический тип данных bool c двумя вариантами значения – True и False. В качестве значений логических переменных стоит использовать 1 (True) или 0 (False).
Запись логических выражений
Определение двух аргументных часто используемых логических операций – ике аргументлы еш кулланылган мантыйк гамәлләр.
А | B | A®B | A V B | A&B | AÅB | A≡B | A│B |
Логические операции языка ПАСКАЛЬ.
А | ┐А | & | V | Å | ┐ – not – не & – and – и V – or – или Å – xor | |||||||||
Одноаргументные выражения и их таблицы истинности
А | ┐┐A | AÅA | A→A | AÅ ┐A | A→┐A | A→1 | A→0 |
А | A&A | A&ùA | AVA | AVùA | A&0 | AV0 | A&1 | AV1 |
Отсюда следует, что
A=AVA=A&A=A&1=AV0=┐┐А=AÅ0
┐A= A→┐A= A→0= AÅ1
1=AV1=AVùA= A→1
0=A&ùA=A&0.
Двух аргументные выражения и их таблицы истинности
А | B | ùAVB =A®B | A&ùB | ùA&ùB=ù(AVB) | ùAVùB =ù(A&B) =A|B |
А | B | A&BVùA&ùB = A≡B | ùA&BVA&ùB = A≠B = AÅB |
А | B | A&BVùB | AVùB |
Трех аргументные выражения и их таблицы истинности
А | B | С | A&BVA&C = A&(BVC) | (AVB)&(AVC) = AVB&C | ||
ДНФ. Построение совершенной дизъюнктивно нормальной формы по таблице истинности (СДНФ).
А | B | С | F(A,B,C)= | A&B&C V A&B&C V A&B&C - СДНФ |
A&B&C V | ||||
A&B&C V | ||||
A&B&C |
Проведем преобразования СДНФ данной функции F(A,B,C).
A&B&C V A&B&C V A&B&C = A&B&C V A&B&C V A&B&C V A&B&C = (AVA)&B&C V A&B&(C V C) = 1&B&C V A&B&1 = B&C V A&B = B&(C V A)
F(A,B,C)= B&(C V A)
Примеры: запись логических выражений на языке ПАСКАЛЬ
А&В —® А and В
ù А V B —® not А or В
A Å B —® A xor B
1. Написать следующие выражения на языке ПАСКАЛЬ и построить их таблицы истинности:
А) ùA & B Б)A & ùB
В) ùA V ùB Г)A V ùB
Д) ù (A & B) Е) ù (ùA & ùB)
Ж) (A & B) V (ùA & ùB) З) ù (A & B) V C & ù B
И) ù (A & B) V ù C & ù B К) (ù A & B) V (A & ù B)
Л) В Å B Å B М) A Å B Å B
Н) A ® B ® B О) ùA ® (ùB & C V (A ® B))
П) ù(A ® ùB) & C V (A ® B) Р) ù(A ® ù(B & C) V (A ® B)
2. Какие из приведенных записей ошибочны и почему
а) NOT A; б) NOT_ABC; в) NOT NOT B; г) C NOT V;
д) A NOT OR B; е) NOT A XOR B; ж) A XOR B ANDC.
3. По заданным булевским выражениям на языке ПАСКАЛЬ написать соответствующие выражения математической логики:
А) not not A and (B xor C) Б)A or true and ùB
В) not A and not B or A and B Г)not (A or not (B or not C))
4. Чему равно значение выражения
А) (A<B) AND (C<=D) AND not E, где A=2, B=3, C=5, D=4, E=FALSE
Б) A DIV TRUNC(B/(2*C)), если A=9, B=26, C=3
В) (X*9)-A, где X=3.2, A=8.7
Г) B OR FALSE, где B=TRUE
Д) X MOD 10 + 1, если X=11
5. С помощью эквивалентных преобразований показать, что
B V A&ùB = B V A.
6. Какие из следущих выражений равны между собой?
А) A|A; A|A|A; A|A|A|A; A|A|A|A|A; A|B; B|A.
Б) A|B|C; A|(B|C); A|A|B|B|C|C.
В) (A ® B) ® С; A ® (B ® С); A ® B; B ® A;
7. Верны ли следующие равенства?
А) (A&ùB V C)&(ùA V B) = B V A ;
Б) (A V B V C)&(ùA V B) = B V A
8. Написать следующие выражения на языке ПАСКАЛЬ, которые для точек с координатами (Х,Ү), находящихся в заштрихованной области,[1] принимают значение true, а за пределами принимают значение false.
А) | Б) | В) | ||||||||
Г) Д)
Е) Ж)
9. Для заданных множеств А и В написать следующие логическое выражения на языке ПАСКАЛЬ, которое для эелемента Х принимает значение 1, если она находится в заштрихованной области А[2], иначе принимает значение 0.
10. Написать логические выражения, принимающие значение true, когда точка (Х,Ү) находится в заштрихованной на рисунке области
11. Написать логические выражения, принимающие значение true, когда точка (Х,Ү) находится в заштрихованной на рисунке области, где окружность радиуса 1 и кривая соответствует Ү=X2.
1)
2)
3)
4)
12. Записать следующие высказывания в виде логических выражений.
А) Если А верно, то В верно;
В) Если из истинности А следует истинность В, то и С истинно
13. Записать функцию из трех переменных F(x1,x2,x3), которое принимает значение 1(истина) в следующих случаях:
А) Если среди значений аргументов есть значение 0(ложь);
Б) Если среди значений аргументов есть значение 1(истина);
В) Если среди значений аргументов значение 1(истина) больше;
Г) Если среди значений аргументов значение 0(ложь) больше;
Д) Если все значения аргументов 0(ложь);
Е) Если все значения аргументов 1(истина);
14. Написать логические выражения для следующих таблиц истинности.
A | B | С | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 |
15. Написать логические выражения двоичного сумматора на языке ПАСКАЛЬ.
C=A+B, где i-тый разряд суммы определяется следующей таблицей
Ai | Bi | Pi | Ci | Pi+1 |
16. Через таблицы истинности определить значения А и В после выполнения следующих трех операторов: A:=АÅB; B:=АÅB; A:=АÅB ?
По аналогии с языками программирования Паскаль, С++ можно использовать конструкции похожие на условный оператор или использовать конструкции, используемые только в PYTHON
if | If-else | If-elif | If-elif-else |
if <условие> : <инструкция> | if <условие> : <инструкция1> else : <инструкция2> | ||
if <условие1> : <инструкция1> else : if <условие2> : <инструкция2> | if <условие1> : <инструкция1> elif <условие2> : <инструкция2> | ||
if <условие1> : <инструкция1> else : if <условие2> : <инструкция2> else : <инструкция3> | if <условие1> : <инструкция1> elif <условие2> : <инструкция2> else : <инструкция3> |
Для вычисления c=max(a,b) можно применить следующие фрагменты программ:
if a>b then c:=a else c:=b; // – на языке Pascal
if (a>b) c=a; else c=b; // – на языке С++
Данная конструкция на языке Python может быть записана следующим образом:
if a>b : c=a
else : c=b
В виде условного выражения можно записать следующим образом:
с= (a if a>b else b)
Задача. Во входной строке записаны три натуральных числа через пробел. Каждое из чисел не превышает 10100. Нужно вывести максимальное целое число.
По аналогии с языком Паскаль было бы следующее решение[3]:
x,y,z=map(int,input().split()
if x>=y and y>=z : print(x)
elif y>=z : print(y)
else : print(z)
Используя условные выражения можно написать следующую программу:
x,y,z=map(int,input().split()
print(x if x>=y and y>=z else y if y>=z else z)
Используя потоковые функции, можно написать следующую программу:
print(max(map(int,input().split())))
Ввод-вывод