CPython
Реализация языка программирования PythonОсновная реализация Python на языке C, мэйнстрим разработки. Версия диалекта языка определяется по реализации CPython. Поколение 3.X (“Python 3000”) не совместимо с предыдущими версиями транслятора. Реализация не может эффективно загружать работой многопроцессорные и многоядерные компьютеры с помощью потоков (thread) из-за глобальной блокировки интерпретатора. В стандартную библиотеку добавлен модуль multiprocessing для параллельного программирования, который запускает задания в отдельных процессах операционной системы.
Примеры:
Hello, World!:
Пример для версий Python 2.xprint "Hello world"
Hello, World!:
Пример для версий Python 3.xprint ("Hello, world!")
Квадратное уравнение:
Пример для версий Python 2.6.5import math
import sys
A = float(raw_input("A = "))
if A == 0:
print "Not a quadratic equation"
sys.exit()
B = float(raw_input("B = "))
C = float(raw_input("C = "))
D = B * B - 4 * A * C
if D == 0:
print "x =", -B / 2.0 / A
sys.exit()
if D > 0:
print "x1 =", (-B + math.sqrt(D)) / 2.0 / A
print "x2 =", (-B - math.sqrt(D)) / 2.0 / A
else:
print "x1 = (", -B / 2.0 / A, ",", math.sqrt(-D) / 2.0 / A, ")"
print "x2 = (", -B / 2.0 / A, ",", -math.sqrt(-D) / 2.0 / A, ")"
CamelCase:
Пример для версий Python 2.6.5Используются функции стандартной библиотеки translate
и title
.
Для функции title
все не-буквы считаются разделителями слов, так что нет необходимости предварительно заменять их пробелами.
non_letters = ''.join(c for c in map(chr, range(256)) if not c.isalpha())
def camel_case(s):
return s.title().translate(None, non_letters)
print camel_case(raw_input())
Факториал:
Пример для версий Python 2.6.5Используется итеративный способ вычисления факториала.
def factorial(n):
if n == 0:
return 1
f = 1
for i in range(1, n + 1):
f *= i
return f
for n in range(16 + 1):
print "%d! = %d" % (n, factorial(n))
Факториал:
Пример для версий Python 2.6.5Используется рекурсивное определение факториала.
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n - 1)
for n in range(16 + 1):
print "%d! = %d" % (n, factorial(n))
Числа Фибоначчи:
Пример для версий Python 2.6.5Используется рекурсивное определение чисел Фибоначчи.
def fibonacci(n):
if n < 3:
return 1
else:
return fibonacci(n - 1) + fibonacci(n - 2)
for n in range(1, 16 + 1):
print "%i," % fibonacci(n) ,
print "..."
Факториал:
Пример для версий Python 3.xИспользуется функциональное определение факториала.
import functools
factorial = lambda n: functools.reduce(lambda a, b: a * b, range(1, n + 1), 1)
for n in range(16 + 1):
print "%d! = %d" % (n, factorial(n))
Комментарии
]]>blog comments powered by Disqus
]]>