Unicode идентификаторы в Python?
Я хочу построить функцию Python, которая рассчитывает,
и хотел бы назвать мою функцию суммирования Σ. Аналогичным образом, хотел бы использовать Π для продукта и так далее. Мне было интересно, есть ли способ назвать функцию Python таким образом?
def Σ (..):
..
..
То есть, поддерживает ли Python идентификаторы юникода, и если да, может ли кто-нибудь предоставить пример для этого?
Спасибо!
Первоначальной мотивацией для этого был фрагмент кода Clojure, который я видел сегодня, который выглядит так:
(defn entropy [X]
(* -1 (Σ [i X] (* (p i) (log (p i))))))
где Σ является макросом, определенным как,
(defmacro Σ
... )
и я подумал, что это было круто
Кстати, чтобы ответить на пару комментариев о читабельности - например, с большим количеством статистики / ML-кода, возможность составления операций с символами была бы действительно полезной. (Особенно для действительно сложных интегралов и др.)
φ(z) = ∫(N(x|0,1,1), -∞, z)
против
Phi(z) = integral(N(x|0,1,1), -inf, z)
или даже просто лямбда-символ для лямбда ()!