Приклади програм на мові 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__ та інші) і розширивши його у разі кількох вхідних функцій з різними аргументами.

Транспонування матриці [ред.]

Приклад лаконічної реалізації операції транспонування матриць із використанням парадигми функціонального програмування.