Jste zde

Méně známé skutečnosti o Pythonu: identifikátory se znaky mimo ASCII

Věděli jste, že od Pythonu verze 3 lze v identifikátorech používat i znaky mimo obvyklý rozsah [a-zA-Z0-9_]?

Skutečně. Od Pythonu 3 lze v identifikátorech používat i Unicode znaky, které jsou mimo tradiční rozsah z ASCII znakové sady. Dva jednodušší příklady na začátek:

>>> Σ = sum
>>> Σ([1, 2, 3, 4])
10
>>> π = 3.1415
>>> π
3.1415

Nelze sice používat úplně všechny Unicode znaky, ale i ono povolené množství (seznam pro Unicode 4.1) umožňuje psát programy, které jsou pro pro mnoho lidí naprosto nečitelné (zdroj):

def 陰陽():
 
    def 半陰陽(半徑,1,2):
 
        形狀(龜形);
        顏色(1,2); 開始填色();
        畫圓(半徑/2, 180); 畫圓(半徑, 180); 左轉(180); 畫圓(-半徑/2, 180);
        結束填色()
 
        左轉(90); 提筆(); 前進(半徑/3); 右轉(90); 下筆();
        顏色(2,1); 開始填色();
        畫圓(半徑/6);
        結束填色()
 
        左轉(90); 提筆(); 後退(半徑/3);左轉(90); 下筆();
 
    重設(); 半陰陽(200,,);  半陰陽(200,,);
 
    提筆();後退(200); 左轉(90); 後退(200);
    顏色();(ip.getsource(陰陽))
 
    進入主迴圈()
 
    return "完成!"

Samozřejmě, to, že Python něco takové podporuje ještě neznamená, že by se to mělo používat. Zmiňuji to spíše jako zajímavost.

Pokud by vás zajímaly detaily, tak mrkněte na PEP 3131 a do sekce Identifikátory a klíčová slova v referenční příručce k Python 3.

Přidat komentář