Приклади програм на мові Python
Зміст
Приклади програм мовою програмування Python. [ред.]
У цій статті зібрані приклади невеликих програм мовою програмування Python, що демонструють його синтаксис та деякі з можливостей.
Заміна значень змінних місцями [ред.]
Знаходження 10 найчастіших слів на web сторінці [ред.]
Цей приклад чисто демонстраційний, оскільки його можна значно покращити.
Приклади роботи з послідовностями [ред.]
Ілюструють особливості індексації елементів та зрізів: під час взяття зрізу нумеруються не самі елементи, а проміжки між ними.
Функції, подібні до range(), підтримують те ж правило (для версій мови 2.x):
Реалізація навантаження функцій [ред.]
Це приклад простої реалізації підтримки навантаження функцій на Python. Вона показує, як, використовуючи вже наявні в Python засоби, можна обійти одне з обмежень базової реалізації. Підтримується мінімум можливостей (тільки фіксована кількість позиційних аргументів, немає іменованих аргументів, немає приведення типів (наприклад int -> float) тощо), але працює досить швидко.
Управління контекстом виконання [ред.]
Наступний приклад PEP343 ілюструє застосування оператора with для захисту блоку коду від одночасного виконання двома потоками:
Генератор чисел Фібоначчі [ ред .
Приклад генератора чисел Фібоначчі та його використання:
Альтернативний синтаксис доступу до елементів словника [ред.]
Можна визначити словник, який на додаток до звичайного синтаксису доступу до значення ключа d[key] може надавати синтаксично більш наочний доступ до атрибуту d.key у разі алфавітно-цифрових ключів:
Функторз генерацією байтокоду [ред.]
Приклад ефективної реалізації функтора, що ґрунтується на генерації байтокода під час виконання. Цей приклад демонструє такі можливості/особливості Python:
- Можливість реалізації специфічних засобів функціонального програмування напрацюваннями, які вже є в мові
- Працювати з байтокодом у Python досить просто
- Найчастіше генерація байтокод здатна значно прискорити виконання.
Це лише приклад, він реалізує лише одну операцію — додавання і має кілька інших обмежень.
Код SlowFunctor можна подивитися тут.Наведені значення часу слід розглядати тільки в порівнянні один з одним.ipython — розширення інтерпретатора Python для інтерактивної роботи.
Використовуючи цю техніку, можна створити повноцінний функтор, додавши функції інших операцій ( __sub__, __div__ та інші) і розширивши його у разі кількох вхідних функцій з різними аргументами.
Транспонування матриці [ред.]
Приклад лаконічної реалізації операції транспонування матриць із використанням парадигми функціонального програмування.