Язык Python имеет много общего с Perl, C и Java. Однако между языками есть определенные различия.
Первая программа на Python
Выполним программы в разных режимах программирования.
Программирование в интерактивном режиме
Вызов интерпретатора без передачи файла сценария в качестве параметра вызывает следующее приглашение:
$ python Python 3.3.2 (default, Dec 10 2013, 11:35:01) [GCC 4.6.3] on Linux Type "help", "copyright", "credits", or "license" for more information. >>> On Windows: Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 24 2015, 22:43:06) [MSC v.1600 32 bit (Intel)] on win32 Type "copyright", "credits" or "license()" for more information. >>>
Введите следующий текст в приглашении Python и нажмите Enter —
>>> print ("Hello, Python!")
Если вы используете старую версию Python (Python 2.x), использование скобок в качестве функции inprint необязательно. Это дает следующий результат —
Hello, Python!
Script Mode Программирование
Вызов интерпретатора с параметром сценария начинает выполнение сценария и продолжается до завершения сценария. Когда сценарий завершен, интерпретатор больше не активен.
Давайте напишем простую программу на Python в сценарии. Файлы Python имеют расширение .py . Введите следующий исходный код в файл test.py —
print ("Hello, Python!")
Мы предполагаем, что у вас установлен интерпретатор Python в переменной PATH . Теперь попробуйте запустить эту программу следующим образом:
В линуксе
$ python test.py
Это дает следующий результат —
Привет, Питон!
На винде
C:\Python34>Python test.py
Это дает следующий результат —
Привет, Питон!
Давайте попробуем другой способ выполнения скрипта Python в Linux. Вот модифицированный файл test.py —
#!/usr/bin/python3 print ("Hello, Python!")
Мы предполагаем, что у вас есть интерпретатор Python, доступный в каталоге / usr / bin. Теперь попробуйте запустить эту программу следующим образом:
$ chmod +x test.py # This is to make file executable $./test.py
Это дает следующий результат —
Hello, Python!
Идентификаторы Python
Идентификатор Python — это имя, используемое для идентификации переменной, функции, класса, модуля или другого объекта. Идентификатор начинается с буквы от A до Z или от a до z или символа подчеркивания (_), за которым следуют ноль или более букв, символов подчеркивания и цифр (от 0 до 9).
Python не допускает использование знаков препинания, таких как @, $ и% в идентификаторах. Python является регистрозависимым языком программирования. Таким образом, рабочая сила и рабочая сила — это два разных идентификатора в Python.
Вот соглашения об именах для идентификаторов Python —
-
Имена классов начинаются с заглавной буквы. Все остальные идентификаторы начинаются со строчной буквы.
-
Начало идентификатора с единственным начальным подчеркиванием означает, что идентификатор является частным.
-
Начало идентификатора с двумя ведущими подчеркиваниями указывает на сильный частный идентификатор.
-
Если идентификатор также заканчивается двумя завершающими подчеркиваниями, этот идентификатор является специальным именем, определяемым языком.
Имена классов начинаются с заглавной буквы. Все остальные идентификаторы начинаются со строчной буквы.
Начало идентификатора с единственным начальным подчеркиванием означает, что идентификатор является частным.
Начало идентификатора с двумя ведущими подчеркиваниями указывает на сильный частный идентификатор.
Если идентификатор также заканчивается двумя завершающими подчеркиваниями, этот идентификатор является специальным именем, определяемым языком.
Зарезервированные слова
В следующем списке показаны ключевые слова Python. Это зарезервированные слова, и вы не можете использовать их в качестве констант или переменных или любых других имен идентификаторов. Все ключевые слова Python содержат только строчные буквы.
а также | Exec | не |
как | в конце концов | или же |
утверждать | за | проходить |
перерыв | от | Распечатать |
учебный класс | Глобальный | повышение |
Продолжить | если | вернуть |
Защита | Импортировать | пытаться |
дель | в | в то время как |
Элиф | является | с |
еще | лямбда | Уступать |
Кроме |
Линии и отступы
Python не использует фигурные скобки ({}) для обозначения блоков кода для определений классов и функций или управления потоком. Блоки кода обозначены отступом строки, который строго соблюдается.
Число пробелов в отступе является переменным, но все операторы в блоке должны иметь одинаковый отступ. Например —
if True: print ("True") else: print ("False")
Однако следующий блок генерирует ошибку —
if True: print ("Answer") print ("True") else: print "(Answer") print ("False")
Таким образом, в Python все непрерывные линии с одинаковым количеством пробелов образуют блок. В следующем примере есть различные блоки операторов:
Примечание. Не пытайтесь понять логику в данный момент. Просто убедитесь, что вы поняли различные блоки, даже если они без скобок.
#!/usr/bin/python3 import sys try: # open file stream file = open(file_name, "w") except IOError: print ("There was an error writing to", file_name) sys.exit() print ("Enter '", file_finish,) print "' When finished" while file_text != file_finish: file_text = raw_input("Enter text: ") if file_text == file_finish: # close the file file.close break file.write(file_text) file.write("\n") file.close() file_name = input("Enter filename: ") if len(file_name) == 0: print ("Next time please enter something") sys.exit() try: file = open(file_name, "r") except IOError: print ("There was an error reading file") sys.exit() file_text = file.read() file.close() print (file_text)
Многострочные операторы
Утверждения в Python обычно заканчиваются новой строкой. Однако Python позволяет использовать символ продолжения строки (\) для обозначения продолжения строки. Например —
total = item_one + \ item_two + \ item_three
Операторы, содержащиеся в скобках [], {} или (), не должны использовать символ продолжения строки. Например —
days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']
Цитата в Python
Python принимает одинарные (‘), двойные («) и тройные (‘ » или» «») кавычки для обозначения строковых литералов при условии, что одинаковый тип кавычек начинается и заканчивается строкой.
Тройные кавычки используются для разделения строки на несколько строк. Например, все следующие являются законными —
word = 'word' sentence = "This is a sentence." paragraph = """This is a paragraph. It is made up of multiple lines and sentences."""
Комментарии в Python
Знак хеша (#), который не находится внутри строкового литерала, является началом комментария. Все символы после #, до конца физической строки, являются частью комментария, и интерпретатор Python их игнорирует.
#!/usr/bin/python3 # First comment print ("Hello, Python!") # second comment
Это дает следующий результат —
Hello, Python!
Вы можете ввести комментарий в той же строке после выражения или выражения —
name = "Madisetti" # This is again comment
Вы можете прокомментировать несколько строк следующим образом —
# This is a comment. # This is a comment, too. # This is a comment, too. # I said that already.
Следующая строка в тройных кавычках также игнорируется интерпретатором Python и может использоваться в качестве многострочного комментария:
''' This is a multiline comment. '''
Использование пустых строк
Строка, содержащая только пробел, возможно с комментарием, называется пустой строкой, и Python полностью игнорирует ее.
В сеансе интерактивного интерпретатора необходимо ввести пустую физическую строку для завершения многострочного оператора.
В ожидании пользователя
В следующей строке программы отображается подсказка и выражение «Нажмите клавишу ввода для выхода», а затем ждет, когда пользователь предпримет какие-либо действия:
#!/usr/bin/python3 input("\n\nPress the enter key to exit.")
Здесь «\ n \ n» используется для создания двух новых строк перед отображением фактической строки. Как только пользователь нажимает клавишу, программа завершается. Это хороший прием, чтобы держать окно консоли открытым, пока пользователь не закончит работу с приложением.
Несколько операторов на одной строке
Точка с запятой (;) допускает несколько операторов в одной строке, если ни один из операторов не начинает новый блок кода. Вот пример фрагмента с использованием точки с запятой:
import sys; x = 'foo'; sys.stdout.write(x + '\n')
Несколько групп утверждений как наборы
Группы отдельных операторов, которые составляют один блок кода, называются наборами в Python. Составные или сложные операторы, такие как if, while, def и class, требуют строки заголовка и набора.
Строки заголовка начинают оператор (с ключевого слова) и заканчиваются двоеточием (:) и сопровождаются одной или несколькими строками, составляющими набор. Например —
if expression : suite elif expression : suite else : suite
Аргументы командной строки
Многие программы могут быть запущены, чтобы предоставить вам некоторую основную информацию о том, как их следует запускать. Python позволяет вам сделать это с -h —
$ python -h usage: python [option] ... [-c cmd | -m mod | file | -] [arg] ... Options and arguments (and corresponding environment variables): -c cmd : program passed in as string (terminates option list) -d : debug output from parser (also PYTHONDEBUG=x) -E : ignore environment variables (such as PYTHONPATH) -h : print this help message and exit [ etc. ]
Вы также можете запрограммировать свой скрипт таким образом, чтобы он принимал различные параметры. Аргументы командной строки — сложная тема. Дайте нам понять это.