- Регистрация
- 25.01.17
- Сообщения
- 763
- Реакции
- 225
- Репутация
- 292
"Краткость - сестра таланта" - писал еще в 19 веке А.П.Чехов. Программы, написанные на python'e отличаются большей краткостью от аналогичных программ, написанных на других языках (Java, C/C++, Pascal), что обуславливается несколькими факторами, о которых вы узнаете из этой статьи.
Логотип до 2005 года
Немного о нем.
Python - на самом деле мощный и в то же время простой для изучения и, в каком-то смысле, понимания объектно-ориентированный язык программирования.
Он сочетает в себе изящный синтаксис и динамическую типизацию. Этот язык отлично послужит для написания различного рода сценариев.
Python был разработан всеми известным голландским программистом Гвидо ван Россумом в 1990 году. Такой язык был просто ему необходим для работы с ОС Amoeba.
Название сего творения Гвидо взял не по виду животного, как можно подумать на первый взгляд, а по названию британского комедийного скетч-сериала "Monty Python's Flying Circus".
Однако сейчас Пайтон (именно так правильно звучит на русском, а не "питон") чаще ассоциируют со змеей, видимо, забывая историю.
Как в нем работать.
Для начала нам потребуется интерпретатор.
- Windows
Скачать интерпретатор можно с официального сайта
Для работы с языком python можно использовать поставляемую в комплекте IDLE (Кстати, эта аббревиатура пошла все из того же сериала). Соответственно там происходит как написание кода, так и его компиляция и запуск.
- Linux
Для установки под Линуксом есть несколько путей, каждый может выбрать наиболее себе подходящий.
1. Скачать интерпретатор с официального сайта и проделать ровно то же самое, что и в Windows.
2. Установить необходимые пакеты через Synaptic Package Manager
3. Черезтерминал, командой sudo apt-get install python3.
В чем писать код - дело каждого. Кому-то больше подходит писать код в IDLE, упомянутой выше, кто-то устанавливает и настраивает другую IDE. Лично я, работая в системе Ubuntu, использую связку Kate (текстовый редактор) + terminal.
Соответственно в Kate происходит набор всего кода, в терминале его интерпретация, запуск.
Сохранение кода производится как обычный файл, расширения .py, .pyw, .pyc, .pyo, .pyd.
Основы python
Начнем мы, конечно, с самого начала, однако предполагается, что хотя бы основы одного языка программирования вы уже знаете.
Уроки будут состоять из изучения с синтаксиса, ввода/вывода, типов данных, ветвлений, циклов и различных "вкусностей".
В первом уроке рассмотрим численные ввод/вывод, типы данных, а также работу с ветвлениями. Остальное будем рассматривать в следующих выпусках.
- Совсем немного о синтаксисе
В python нет как таковых ограничителей блоков кода. Зато здесь есть отступы. Они и играют эту роль. Забегая немного вперед, покажу код, который отобразит данную особенность
В этом примере операции a = b и print (a) будут выполняться в том случае, если выполнится условие.
Из этого же примера видно, что в пайтоне нет огрничителей конца строк, как, например, в Pascal'е.
С остальными особенностями мы разберемся по мере их поступления.
- Ввод/вывод
Считывание производится с помощью функции input(). Эта функция возвращает в качестве результата строку.
Такой код считает две введенные строки.
Если мы точно знаем, что в качестве вводимых данных будут использованы числа, то, можно воспользоваться функцией приведения int()
В переменную a будет записано число, если оно находится одно на строке. (если чисел в строке, считанной input() несколько, то строка не сможет быть переведена в число).
Для вывода значений используется функция print (). Ее функционал ясен интуитивно, ничего сложного нет.
У функции print () есть два довольно интересных параметра sep и end.
Сначала рассмотрим параметр sep. Как не сложно догадаться, sep - сокращение от англ. separator - разделитель. Он нужен для того, чтобы разделять выводимые значения различными символами.
По умолчанию параметр sep = ' ' (пробелу). То есть, код вида print (a, b, c) выведет на экран значения переменных через пробел.
Этот параметр можно изменить следующим образом:
Второй параметр - end. Он определяет символ, идущий последним в строке. По умолчанию он равен /n, т.е. перевод строки.
Изменять его можно также, как и sep.
- Числа
Здесь ничего принципиального нового, отличающегося от других языков программирования, нет. Основные операции "+", "-", "*", "/". Операция взятия остатка - "%" (работает также и для вещественных чисел).
Это простейшие операции, их работу, думаю, объяснять не надо. Также есть операция деления целых чисел, которая отсекает дробную часть.
Код:
Результат:
4
Код:
Результат:
-5
Далее следует рассмотреть операции присваивания. Рассмотрим их как раз на примере чисел, с другими типами данных эта операция будет такая же. Здесь и будут первые обещанные "вкусности".
Самая простая операция присваивания "=" (равно).
Поддерживаются операции присваивания нескольких переменных. Это вкусность №1.
Пайтон умеет работать с комплексными числами. Задать комплексное число можно несколькими способами.
Способ первый - записать число в виде (<вещественная часть> + <мнимая часть>j), где j или J будет обозначать, что это мнимая часть.
Способ второй - воспользоваться функцией complex (<вещественная часть>, <мнимая часть>
Результат:
(-8+14j)
* Здесь был использован знак #, который является объявлением комментария. Так же в качестве комментария можно использовать три подряд идущие кавычки ''' или """.
Если у нас есть комплексное число, то можно получить его вещественную и мнимую часть с помощью z.real и z.imag :
Цитата:
Код:
Результат:
4.6
8.23
Для приведения типов есть функции int (), float () (не работают с комплексными числами). Для получения модуля числа существует функция abs (x).
Вкусность вторая заключается в том, что можно писать конструкции следующего вида :
В этом случае в переменную а будет записано значение переменной x, в b - y, а в c - z.
Таким образом swap можно писать в одну строчку:
Думаю, что стоит рассмотреть довольно интересную операцию - возведение в степень.
Имеет вид <число> ** <степень>.
Код:
Результат:
1267650600228229401496703205376
Код:
Результат:
7625597484987
Код:
Результат:
19683
- Условный оператор
Условный оператор в python имеет следующий вид:
Вот такой синтаксис. В остальном эта конструкция ничем не отличается от аналогичный ей в других языках, поэтому останавливаться на знаках сравнения, логических операторах и т.п. не будем.
Единственное, на чем хочу остановиться на каскадных конструкциях. Нередко в программах встречаются конструкции вида
...
В python эта конструкция может быть заменена на более короткую :
Такая конструкция ускоряет и упрощает написание кода.
Для закрепления рассмотрим код программы, которая определяет, является ли введенный год високосным или нет:
Логотип до 2005 года
Немного о нем.
Python - на самом деле мощный и в то же время простой для изучения и, в каком-то смысле, понимания объектно-ориентированный язык программирования.
Он сочетает в себе изящный синтаксис и динамическую типизацию. Этот язык отлично послужит для написания различного рода сценариев.
Python был разработан всеми известным голландским программистом Гвидо ван Россумом в 1990 году. Такой язык был просто ему необходим для работы с ОС Amoeba.
Название сего творения Гвидо взял не по виду животного, как можно подумать на первый взгляд, а по названию британского комедийного скетч-сериала "Monty Python's Flying Circus".
Однако сейчас Пайтон (именно так правильно звучит на русском, а не "питон") чаще ассоциируют со змеей, видимо, забывая историю.
Как в нем работать.
Для начала нам потребуется интерпретатор.
- Windows
Скачать интерпретатор можно с официального сайта
You must be registered for see links
. Затем последует несложный процесс установки и, в итоге, Пайтон будет установлен на ваш компьютер.Для работы с языком python можно использовать поставляемую в комплекте IDLE (Кстати, эта аббревиатура пошла все из того же сериала). Соответственно там происходит как написание кода, так и его компиляция и запуск.
- Linux
Для установки под Линуксом есть несколько путей, каждый может выбрать наиболее себе подходящий.
1. Скачать интерпретатор с официального сайта и проделать ровно то же самое, что и в Windows.
2. Установить необходимые пакеты через Synaptic Package Manager
3. Черезтерминал, командой sudo apt-get install python3.
В чем писать код - дело каждого. Кому-то больше подходит писать код в IDLE, упомянутой выше, кто-то устанавливает и настраивает другую IDE. Лично я, работая в системе Ubuntu, использую связку Kate (текстовый редактор) + terminal.
Соответственно в Kate происходит набор всего кода, в терминале его интерпретация, запуск.
Сохранение кода производится как обычный файл, расширения .py, .pyw, .pyc, .pyo, .pyd.
Основы python
Начнем мы, конечно, с самого начала, однако предполагается, что хотя бы основы одного языка программирования вы уже знаете.
Уроки будут состоять из изучения с синтаксиса, ввода/вывода, типов данных, ветвлений, циклов и различных "вкусностей".
В первом уроке рассмотрим численные ввод/вывод, типы данных, а также работу с ветвлениями. Остальное будем рассматривать в следующих выпусках.
- Совсем немного о синтаксисе
В python нет как таковых ограничителей блоков кода. Зато здесь есть отступы. Они и играют эту роль. Забегая немного вперед, покажу код, который отобразит данную особенность
if (a % 7 == 6): a = b print (a)
В этом примере операции a = b и print (a) будут выполняться в том случае, если выполнится условие.
Из этого же примера видно, что в пайтоне нет огрничителей конца строк, как, например, в Pascal'е.
С остальными особенностями мы разберемся по мере их поступления.
- Ввод/вывод
Считывание производится с помощью функции input(). Эта функция возвращает в качестве результата строку.
a = input() b = input()
Такой код считает две введенные строки.
Если мы точно знаем, что в качестве вводимых данных будут использованы числа, то, можно воспользоваться функцией приведения int()
a = int (input())
В переменную a будет записано число, если оно находится одно на строке. (если чисел в строке, считанной input() несколько, то строка не сможет быть переведена в число).
Для вывода значений используется функция print (). Ее функционал ясен интуитивно, ничего сложного нет.
print (a, '+', b, '=', ans) print ('YES')
У функции print () есть два довольно интересных параметра sep и end.
Сначала рассмотрим параметр sep. Как не сложно догадаться, sep - сокращение от англ. separator - разделитель. Он нужен для того, чтобы разделять выводимые значения различными символами.
По умолчанию параметр sep = ' ' (пробелу). То есть, код вида print (a, b, c) выведет на экран значения переменных через пробел.
Этот параметр можно изменить следующим образом:
print (a, b, c, sep = '#') print (x, y, z, sep = '/n')
Второй параметр - end. Он определяет символ, идущий последним в строке. По умолчанию он равен /n, т.е. перевод строки.
Изменять его можно также, как и sep.
print(a, b, c, sep = '', end = '')
- Числа
Здесь ничего принципиального нового, отличающегося от других языков программирования, нет. Основные операции "+", "-", "*", "/". Операция взятия остатка - "%" (работает также и для вещественных чисел).
Это простейшие операции, их работу, думаю, объяснять не надо. Также есть операция деления целых чисел, которая отсекает дробную часть.
Код:
print (17 // 4)
Результат:
4
Код:
print (17 // -4)
Результат:
-5
Далее следует рассмотреть операции присваивания. Рассмотрим их как раз на примере чисел, с другими типами данных эта операция будет такая же. Здесь и будут первые обещанные "вкусности".
Самая простая операция присваивания "=" (равно).
x = 4
Поддерживаются операции присваивания нескольких переменных. Это вкусность №1.
a = b = 4.6
Пайтон умеет работать с комплексными числами. Задать комплексное число можно несколькими способами.
Способ первый - записать число в виде (<вещественная часть> + <мнимая часть>j), где j или J будет обозначать, что это мнимая часть.
Способ второй - воспользоваться функцией complex (<вещественная часть>, <мнимая часть>
Код: z = 4 + 6j # Равносильно z = 4 + 6J z1 = complex (1,2) ans = z * z1 print (ans)
Результат:
(-8+14j)
* Здесь был использован знак #, который является объявлением комментария. Так же в качестве комментария можно использовать три подряд идущие кавычки ''' или """.
Если у нас есть комплексное число, то можно получить его вещественную и мнимую часть с помощью z.real и z.imag :
Цитата:
Код:
z = 4.6 + 8.23j print (z.real) print (z.imag)
Результат:
4.6
8.23
Для приведения типов есть функции int (), float () (не работают с комплексными числами). Для получения модуля числа существует функция abs (x).
Вкусность вторая заключается в том, что можно писать конструкции следующего вида :
a, b, c = x, y, z
В этом случае в переменную а будет записано значение переменной x, в b - y, а в c - z.
Таким образом swap можно писать в одну строчку:
a, b = b, a
Думаю, что стоит рассмотреть довольно интересную операцию - возведение в степень.
Имеет вид <число> ** <степень>.
Код:
print (2 ** 100)
Результат:
1267650600228229401496703205376
Код:
print (3 ** 3 ** 3)
Результат:
7625597484987
Код:
print ((3 ** 3) ** 3)
Результат:
19683
- Условный оператор
Условный оператор в python имеет следующий вид:
if <условие>:
<оператор(ы)> else:
<оператор(ы)>
Вот такой синтаксис. В остальном эта конструкция ничем не отличается от аналогичный ей в других языках, поэтому останавливаться на знаках сравнения, логических операторах и т.п. не будем.
Единственное, на чем хочу остановиться на каскадных конструкциях. Нередко в программах встречаются конструкции вида
if <условие>:
<оператор(ы)> else: if <условие>:
<оператор(ы)> else:
...
В python эта конструкция может быть заменена на более короткую :
if <условие>:
<оператор(ы)> elif <условие>:
<оператор(ы)> elif <условие>:
<оператор(ы)>
Такая конструкция ускоряет и упрощает написание кода.
Для закрепления рассмотрим код программы, которая определяет, является ли введенный год високосным или нет:
a = int (input()) if not(a % 4) and (a % 100) or not(a % 400): print ('YES') else: print ('NO').