Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия | |||
— | python [2025/07/06 12:39] (текущий) – внешнее изменение 127.0.0.1 | ||
---|---|---|---|
Строка 1: | Строка 1: | ||
+ | ====== Синтаксис Python ====== | ||
+ | ~~Title: Синтаксис Python ~~ | ||
+ | {{htmlmetatags> | ||
+ | metatag-description=(Команды интерпретатора Python, IPython. Синтаксис Python. Использование циклов в Питоне.) | ||
+ | }} | ||
+ | [[https:// | ||
+ | * [[Модули Python]] | ||
+ | * [[Запуск скрипта на Python в Linux]] | ||
+ | * Профилирование и оптимизация кода Python ([[Pychecker]]) | ||
+ | * Python GUI | ||
+ | * [[wxPython]] | ||
+ | * [[Clutter]] - графическая библиотека. | ||
+ | * [[Использование инструкции import в Python]] | ||
+ | * [[Python и SQLite]] | ||
+ | * [[Twisted]] - событийно -ориентированный сетевой фреймворк. | ||
+ | * Scapy - одновременно интерактивная программа и библиотека манипулирования сетевыми пакетами. | ||
+ | * [[Django]] | ||
+ | * [[Flask]] | ||
+ | |||
+ | {{ :: | ||
+ | |||
+ | ==== Комментарий ==== | ||
+ | **#** - символ, | ||
+ | |||
+ | **(), \** - разбиение длинных логических строк на физические. Явно - с помощью обратной косой черты или неявно - внутри скобок. | ||
+ | < | ||
+ | '', | ||
+ | </ | ||
+ | |||
+ | **\** - задает управляющие последовательности внутри строковых литералов:< | ||
+ | ------> print(" | ||
+ | stroka1 | ||
+ | next stroka2</ | ||
+ | |||
+ | ==== Кодировка файла ==== | ||
+ | Правильная начало файла ниже. Не должно быть пустых строк перед coding | ||
+ | < | ||
+ | # -*- coding: utf-8 -*- | ||
+ | #</ | ||
+ | |||
+ | ===== Команды интерпретатора Python, IPython ===== | ||
+ | |||
+ | ==== Запуск интерпретатора Python или IPython ==== | ||
+ | |||
+ | < | ||
+ | ~$ python | ||
+ | Python 2.6.2 (release26-maint, | ||
+ | [GCC 4.3.3] on linux2 | ||
+ | Type " | ||
+ | >>> | ||
+ | </ | ||
+ | Ctrl+D - выход | ||
+ | < | ||
+ | $ ipython | ||
+ | / | ||
+ | from sets import Set | ||
+ | Python 2.6.2 (release26-maint, | ||
+ | Type " | ||
+ | |||
+ | IPython 0.9.1 -- An enhanced Interactive Python. | ||
+ | ? -> Introduction and overview of IPython' | ||
+ | %quickref -> Quick reference. | ||
+ | help -> Python' | ||
+ | object? | ||
+ | </ | ||
+ | Ctrl+D - выход | ||
+ | |||
+ | ==== Команды интерпретатора ==== | ||
+ | * вывод ключевых слов Python. Их нельзя использовать в качестве имен переменных, | ||
+ | |||
+ | < | ||
+ | In [1]: import keyword | ||
+ | In [2]: print keyword.kwlist | ||
+ | ------> print(keyword.kwlist) | ||
+ | [' | ||
+ | ' | ||
+ | ' | ||
+ | </ | ||
+ | |||
+ | ===== Директивы ===== | ||
+ | |||
+ | Начиная с Python 2.3, для использования в тексте программы символов, | ||
+ | < | ||
+ | </ | ||
+ | После этого можно, например, | ||
+ | |||
+ | **Вывод полного перечня кодировок и их псевдонимов: | ||
+ | < | ||
+ | In [5]: print encodings.aliases.aliases | ||
+ | ------> print(encodings.aliases.aliases) | ||
+ | {' | ||
+ | ... | ||
+ | ' | ||
+ | </ | ||
+ | |||
+ | ===== Обработка исключений ===== | ||
+ | Обработка исключений поддерживается в Python посредством операторов try, except, else, finally, raise, образующих блок обработки исключения. В общем случае блок выглядит следующим образом: | ||
+ | |||
+ | try: | ||
+ | #здесь код, который может вызвать исключение | ||
+ | raise ExceptionType(" | ||
+ | except (Тип исключения1, | ||
+ | #Код в блоке выполняется, | ||
+ | #(Тип исключения1, | ||
+ | #из этих типов. | ||
+ | # | ||
+ | except (Тип исключения3, | ||
+ | # | ||
+ | raise # | ||
+ | except: | ||
+ | #Будет выполнено при любом исключении, | ||
+ | else: | ||
+ | #Код блока выполняется, | ||
+ | finally: | ||
+ | #будет исполненно в любом случае, | ||
+ | #блока except или else | ||
+ | |||
+ | Совместное использование else, except и finally стало возможно только начиная в Python 2.5. Информация о текущем исключении всегда доступна через sys.exc_info(). Кроме значения исключения Python также сохраняет состояние стека вплоть до точки возбуждения исключения — так называемый traceback. | ||
+ | |||
+ | В отличие от компилируемых языков программирования, | ||
+ | |||
+ | Иногда вместо явной обработки исключений удобнее использовать блок with (доступен, | ||
+ | ===== Цикл for ===== | ||
+ | Инструкция for в языке Python немного отличается от того, что используется в таких языках, | ||
+ | |||
+ | for lvalue in sequence: | ||
+ | |||
+ | suite1 | ||
+ | |||
+ | [else: | ||
+ | |||
+ | suite2] | ||
+ | |||
+ | Расшифруем: | ||
+ | |||
+ | 1) сначала выполняется обязательная ветвь for; | ||
+ | |||
+ | 2) sequence представляет собой последовательность элементов, | ||
+ | |||
+ | 3) in означает, | ||
+ | |||
+ | 4) после того как ветвь for выполнится (элементы в последовательности закончатся), | ||
+ | |||
+ | От сухих формулировок перейдем к примеру: | ||
+ | |||
+ | >>> | ||
+ | |||
+ | >>> | ||
+ | |||
+ | … print text, | ||
+ | |||
+ | … | ||
+ | |||
+ | I love you! | ||
+ | |||
+ | ===== Цикл while ===== | ||
+ | Инструкция while предназначена для создания циклов. Циклы необходимы для многократного выполнения тех или иных действий и выглядят так: | ||
+ | |||
+ | while expr: | ||
+ | |||
+ | suite1 | ||
+ | |||
+ | [else: | ||
+ | |||
+ | suite2] | ||
+ | |||
+ | Расшифруем: | ||
+ | |||
+ | 1) цикл должен состоять минимум из одной ветви while; | ||
+ | |||
+ | 2) в этой ветви проверяется истинность условия expr, и, если оно истинно, | ||
+ | |||
+ | 3) если условие expr станет ложным, | ||
+ | |||
+ | 4) ветвь else является необязательным (может отсутствовать), | ||
+ | |||
+ | Рассмотрим пример, | ||
+ | |||
+ | >>> | ||
+ | |||
+ | >>> | ||
+ | |||
+ | … print b, | ||
+ | |||
+ | … a,b = b, a + b | ||
+ | |||
+ | … | ||
+ | |||
+ | 1 1 2 3 5 8 | ||
+ | |||
+ | >>> | ||
+ | Python и условные операторы | ||
+ | Цикл while | ||
+ | |||
+ | Здесь, цикл while выполняется, | ||
+ | |||
+ | Рассмотрим пример с веткой else: | ||
+ | |||
+ | >>> | ||
+ | |||
+ | >>> | ||
+ | |||
+ | … print number, | ||
+ | |||
+ | … number += 1 | ||
+ | |||
+ | …else: | ||
+ | |||
+ | … print ‘number =’, number | ||
+ | |||
+ | … | ||
+ | |||
+ | 1 2 3 4 number = 5 | ||
+ | |||
+ | >>> | ||
+ | |||
+ | На этот раз, после того как условие перестало быть истинным (number = 5), выполняется else, где и выводится последнее значение переменной number. | ||
+ | |||
+ | Для удобной работы с циклами Python предлагает инструкции break и continue. | ||
+ | |||
+ | break, находящийся внутри ветви while, указывает немедленно выйти из цикла. При этом пропускается | ||
+ | |||
+ | >>> | ||
+ | |||
+ | >>> | ||
+ | |||
+ | … print number, | ||
+ | |||
+ | … number += 1 | ||
+ | |||
+ | … if number == 4: | ||
+ | |||
+ | … break | ||
+ | |||
+ | …else: | ||
+ | |||
+ | … print ‘number =’, number | ||
+ | |||
+ | … | ||
+ | |||
+ | 1 2 3 | ||
+ | |||
+ | >>> | ||
+ | |||
+ | Как видно, еще до того, как переменная number стала равной 5, удовлетворяется условие number = 4 и выполняется выход из цикла по команде break, при этом ветвь else была проигнорирована. | ||
+ | |||
+ | continue, также находящийся внутри цикла, указывает, | ||
+ | |||
+ | >>> | ||
+ | |||
+ | >>> | ||
+ | |||
+ | … number = +1 | ||
+ | |||
+ | … if number <= 2: | ||
+ | |||
+ | … | ||
+ | |||
+ | … print number, | ||
+ | |||
+ | …else: | ||
+ | |||
+ | … print ‘number =’, number | ||
+ | |||
+ | … | ||
+ | |||
+ | 3 4 5 number = 5 | ||
+ | |||
+ | >>> | ||
+ | |||
+ | На этот раз цикл каждый раз увеличивает переменную number на единицу, | ||
+ | |||
+ | Отмечу, | ||
+ | |||
+ | ====== Заключение или дополнительные ссылки по языку Python ====== | ||
+ | - [[IPython]] | ||
+ | - [[mod_python]] или [[mod_wsgi]] | ||
+ | - [[Структура программы на Python]] Инструкция import | ||
+ | |||
+ | В этой статье мы рассмотрели основы синтаксиса языка программирования Python. Синтаксис Python предоставляет мощные инструменты для решения различных задач программирования. Независимо от того, являетесь ли вы начинающим программистом или опытным разработчиком, |
📌 Удобный подбор VPS по параметрам доступен на DIEGfinder.com - официальном инструменте проекта DIEG. Это часть единой экосистемы, созданной для того, чтобы помочь быстро найти подходящий VPS/VDS сервер для любых задач хостинга.
📌 Для тестирования скриптов, установщиков VPN и Python-ботов рекомендуем использовать надежные VPS на короткий срок. Подробнее о быстрой аренде VPS для экспериментов - читайте здесь.
💥 Подпишись в Телеграм 💥 и задай вопрос по сайтам и хостингам бесплатно!7 Самых Популярных Статей
- Как запустить скрипты и веб-приложения на Python
- Что такое страны TIER 1,2,3
- 7 способов сравнения файлов по содержимому в Windows или Linux
- Установка и тестирование веб-панели HestiaCP
- Nginx простые примеры конфигурации
- top, htop, atop определение загрузки ОС (Load average, LA)
- Использование rsync в примерах
7 Самых Популярных Обзоров
- Хостинг для Python-скриптов и приложений
- ТОП 4 лучших антидетект браузеров (Бесплатные & Платные)
- Подборка купонов (промокоды) на хостинг, антидетект браузеры
- Обзор THE.Hosting (PQ Hosting): надежный хостинг с профессиональной поддержкой
- Хостинг в России
- Хостинг в Европе
- Обзор браузера Dolphin {anty} для мультиаккаунтинга