Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Π―Π·Ρ‹ΠΊ программирования PythonΒ». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 26

Автор Π ΠΎΠΌΠ°Π½ Π‘ΡƒΠ·ΠΈ

Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ для Python созданы Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с СстСствСнными языками, Π° Ρ‚Π°ΠΊΠΆΠ΅ для лингвистичСских исслСдований. Π₯ΠΎΡ€ΠΎΡˆΠΈΠΌ ΡƒΡ‡Π΅Π±Π½Ρ‹ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ nltk (the Natural Language Toolkit).

Π‘Ρ‚ΠΎΠΈΡ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ PyParsing (сайт:http://pyparsing.sourceforge.net), с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ тСкста ΠΏΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΉ Π³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΈΠΊΠ΅.

Π‘Ρ‚Ρ€ΠΎΠΊΠΈ

Π‘Ρ‚Ρ€ΠΎΠΊΠΈ Π² языкС Python ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‚ΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ…, ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹ΠΌ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ тСкстовой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π‘Ρ‚Ρ€ΠΎΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎ Π΄Π»ΠΈΠ½Π½Ρ‹ΠΉ тСкст (ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ ΠΈΠΌΠ΅ΡŽΡ‰Π΅ΠΉΡΡ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ).

Π’ Π½ΠΎΠ²Ρ‹Ρ… вСрсиях Python ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ Π΄Π²Π° Ρ‚ΠΈΠΏΠ° строк: ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ строки (ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π±Π°ΠΉΡ‚ΠΎΠ²) ΠΈ Unicode–строки (ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ символов). Π’ Unicode–строкС ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ символ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒ Π² памяти 2 ΠΈΠ»ΠΈ 4 Π±Π°ΠΉΡ‚Π°, Π² зависимости ΠΎΡ‚ настроСк ΠΏΠ΅Ρ€ΠΈΠΎΠ΄Π° компиляции. Π§Π΅Ρ‚Ρ‹Ρ€Π΅Ρ…Π±Π°ΠΉΡ‚ΠΎΠ²Ρ‹Π΅ Π·Π½Π°ΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² основном для восточных языков.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅:

Π’ языкС ΠΈ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ Π·Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡΠΌΠΈ строки ΠΈ Unicode–строки взаимозамСняСмы, Π² собствСнных прилоТСниях для совмСстимости с ΠΎΠ±ΠΎΠΈΠΌΠΈ Π²ΠΈΠ΄Π°ΠΌΠΈ строк слСдуСт ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ Π½Π° Ρ‚ΠΈΠΏ. Если это Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ Π±Π°Π·ΠΎΠ²ΠΎΠΌΡƒ (для строк ΠΈ Unicode–строк) Ρ‚ΠΈΠΏΡƒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ isinstance(s, basestring). 

ΠŸΡ€ΠΈ использовании Unicode–строк, слСдуСт мыслСнно ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ Ρ‚ΠΎΡ‡ΠΊΡƒ зрСния, ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΈΠΌΠ΅Π½Π½ΠΎ Unicode–прСдставлСниС являСтся Π³Π»Π°Π²Π½Ρ‹ΠΌ, Π° всС ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ β€” лишь частныС случаи прСдставлСния тСкста, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ всСх символов. Π‘Π΅Π· Ρ‚Π°ΠΊΠΎΠΉ установки Π±ΡƒΠ΄Π΅Ρ‚ нСпонятно, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ· Π²ΠΎΡΡŒΠΌΠΈΠ±ΠΈΡ‚Π½ΠΎΠΉ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ называСтся decode (Π΄Π΅ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅). Для внСшнСго прСдставлСния ΠΌΠΎΠΆΠ½ΠΎ с успСхом ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ UTF–8, хотя, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, это зависит ΠΎΡ‚ Ρ€Π΅ΡˆΠ°Π΅ΠΌΡ‹Ρ… Π·Π°Π΄Π°Ρ‡.

ΠšΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ° Python–программы

Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Unicode–литСралы Π² Python–программС Π²ΠΎΡΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π»ΠΈΡΡŒ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ΠΎΠΌ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, записав Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΈΠ»ΠΈ Π²Ρ‚ΠΎΡ€ΠΎΠΉ строкС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ (для Unix/Linux):

# -*- coding: koi8–r -*-

ΠΈΠ»ΠΈ (ΠΏΠΎΠ΄ Windows):

# -*- coding: cp1251 -*-

ΠœΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹:

# -*- coding: latin–1 -*-

# -*- coding: utf–8 -*-

# -*- coding: mac–cyrillic -*-

# -*- coding: iso8859–5 -*-

ΠŸΠΎΠ»Π½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΎΠΊ (ΠΈ ΠΈΡ… псСвдонимов):

>>> import encodings.aliases

>>> print encodings.aliases.aliases

{'iso_ir_6': 'ascii', 'maccyrillic': 'mac_cyrillic',

'iso_celtic': 'iso8859_14', 'ebcdic_cp_wt': 'cp037',

'ibm500': 'cp500', ...

Если ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ° Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½Π°, Ρ‚ΠΎ считаСтся, Ρ‡Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ us–ascii. ΠŸΡ€ΠΈ этом ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ Python Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π΄Π°Π²Π°Ρ‚ΡŒ прСдупрСТдСния ΠΏΡ€ΠΈ запускС модуля:

sys:1: DeprecationWarning: Non–ASCII character '\xf0' in file example.py

on line 2, but no encoding declared;

see http://www.python.org/peps/pep–0263.html for details

Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹Π΅ Π»ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹

Π‘Ρ‚Ρ€ΠΎΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ строковых Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΠΎΠ². Π›ΠΈΡ‚Π΅Ρ€Π°Π»Ρ‹ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ с использованиСм апострофов ', ΠΊΠ°Π²Ρ‹Ρ‡Π΅ΠΊ " ΠΈΠ»ΠΈ этих ΠΆΠ΅ символов, взятых Ρ‚Ρ€ΠΈΠΆΠ΄Ρ‹. Π’Π½ΡƒΡ‚Ρ€ΠΈ Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΠΎΠ² обратная косая Ρ‡Π΅Ρ€Ρ‚Π° ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Она слуТит для Π²Π²ΠΎΠ΄Π° ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… символов ΠΈ для указания символов Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠ΄Ρ‹. Если ΠΏΠ΅Ρ€Π΅Π΄ строковым Π»ΠΈΡ‚Π΅Ρ€Π°Π»ΠΎΠΌ поставлСно r, обратная косая Ρ‡Π΅Ρ€Ρ‚Π° Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ значСния (r ΠΎΡ‚ английского слова raw, строка задаСтся Β«ΠΊΠ°ΠΊ Π΅ΡΡ‚ΡŒΒ»). Unicode–литСралы Π·Π°Π΄Π°ΡŽΡ‚ΡΡ с прСфиксом u. Π’ΠΎΡ‚ нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ²:

s1 = "строка 1"

s2 = r'\1\2'

s3 = """apple\ntree""" # \n β€” символ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° строки

s4 = """apple

tree""" # строка Π² ΡƒΡ‚Ρ€ΠΎΠ΅Π½Π½Ρ‹Ρ… ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ°Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρ‹ строк

s5 = '\x73\65'

u1 = u"Unicode literal"

u2 = u'\u0410\u0434\u0440\u0435\u0441'

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅:

ΠžΠ±Ρ€Π°Ρ‚Π½Π°Ρ косая Ρ‡Π΅Ρ€Ρ‚Π° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ послСдним символом Π² Π»ΠΈΡ‚Π΅Ρ€Π°Π»Π΅, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ, "str\" Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ ΡΠΈΠ½Ρ‚Π°ΠΊΡΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΎΡˆΠΈΠ±ΠΊΡƒ. 

Π£ΠΊΠ°Π·Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠΈ позволяСт ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Π² Unicode–литСралах ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ Π² Π½Π°Ρ‡Π°Π»Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ. Если ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ° Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½Π°, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ΄Π°ΠΌΠΈ символов, Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ ΠΊΠΎΡΡƒΡŽ Ρ‡Π΅Ρ€Ρ‚Ρƒ.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π°Π΄ строками

К опСрациям Π½Π°Π΄ строками, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ ΡΠΈΠ½Ρ‚Π°ΠΊΡΠΈΡ‡Π΅ΡΠΊΡƒΡŽ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ Π² языкС, относятся, Π² частности конкатСнация (склСиваниС) строк, ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π΅Π½ΠΈΠ΅ строки, Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅:

>>> print "A" + "B", "A"*5, "%s" % "A"

AB AAAAA A

Π’ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ форматирования Π»Π΅Π²Ρ‹ΠΉ ΠΎΠΏΠ΅Ρ€Π°Π½Π΄ являСтся строкой Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°, Π° ΠΏΡ€Π°Π²Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π»ΠΈΠ±ΠΎ ΠΊΠΎΡ€Ρ‚Π΅ΠΆΠ΅ΠΌ, Π»ΠΈΠ±ΠΎ словарСм, Π»ΠΈΠ±ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°:

>>> print "%i" % 234

234

>>> print "%i %s %3.2f" % (5, "ABC", 23.45678)

5 ABC 23.46

>>> a = 123

>>> b = [1, 2, 3]

>>> print "%(a)i: %(b)s" % vars()

123: [1, 2, 3]

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ форматирования

Π’ строкС Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° ΠΊΡ€ΠΎΠΌΠ΅ тСкста ΠΌΠΎΠ³ΡƒΡ‚ ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π»ΡΡ‚ΡŒΡΡ спСцификации, Ρ€Π΅Π³Π»Π°ΠΌΠ΅Π½Ρ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ значСния. БпСцификация ΠΈΠΌΠ΅Π΅Ρ‚ синтаксис

"%" [ΠΊΠ»ΡŽΡ‡][Ρ„Π»Π°Π³*][ΡˆΠΈΡ€][.Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ][Π΄Π»ΠΈΠ½Π°_Ρ‚ΠΈΠΏΠ°]спСцификатор

ΠΊΠ»ΡŽΡ‡: "(" символ Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΊΡ€ΡƒΠ³Π»Ρ‹Ρ… скобок* ")"

Ρ„Π»Π°Π³: "+" | "-" | ΠΏΡ€ΠΎΠ±Π΅Π» | "#" | "0"

ΡˆΠΈΡ€: ("1" ... "9")("0" ... "9")* | "*"

Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ: ("1" ... "9")* | "*"

Π΄Π»ΠΈΠ½Π°_Ρ‚ΠΈΠΏΠ°: "a" ... "z" | "A" ... "Z"

спСцификатор: "a" ... "z" | "A" ... "Z" | "%"

Π“Π΄Π΅ символы ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

ΠΊΠ»ΡŽΡ‡

ΠšΠ»ΡŽΡ‡ ΠΈΠ· словаря.

Ρ„Π»Π°Π³ΠΈ

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ свойства прСобразования.

ΡˆΠΈΡ€

Минимальная ΡˆΠΈΡ€ΠΈΠ½Π° поля.

Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ

Π’ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ (для чисСл с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой).

Π΄Π»ΠΈΠ½Π°_Ρ‚ΠΈΠΏΠ°

ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Ρ‚ΠΈΠΏΠ°.

спСцификатор

Π’ΠΈΠΏ прСдставлСния Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ значСния для спСцификации форматирования.

Π‘ΠΈΠΌΠ²ΠΎΠ» Π“Π΄Π΅ примСняСтся Π§Ρ‚ΠΎ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ 0 Ρ„Π»Π°Π³ Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ нулями слСва - Ρ„Π»Π°Π³ Π’Ρ‹Ρ€Π°Π²Π½ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Π»Π΅Π²ΠΎΠΌΡƒ ΠΊΡ€Π°ΡŽ + Ρ„Π»Π°Π³ ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Π²Ρ‹Π²ΠΎΠ΄ Π·Π½Π°ΠΊΠ° числа ΠΏΡ€ΠΎΠ±Π΅Π» Ρ„Π»Π°Π³ Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π΅Π» Π½Π° мСстС Π·Π½Π°ΠΊΠ° числа d, i спСцификатор Π—Π½Π°ΠΊΠΎΠ²ΠΎΠ΅ Ρ†Π΅Π»ΠΎΠ΅ u спСцификатор Π‘Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΠΎΠ΅ Ρ†Π΅Π»ΠΎΠ΅ o спСцификатор Π’ΠΎΡΡŒΠΌΠ΅Ρ€ΠΈΡ‡Π½ΠΎΠ΅ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΠΎΠ΅ Ρ†Π΅Π»ΠΎΠ΅ x, X спСцификатор ШСстнадцатСричноС Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²ΠΎΠ΅ Ρ†Π΅Π»ΠΎΠ΅ (со строчными ΠΈΠ»ΠΈ прописными латинскими Π±ΡƒΠΊΠ²Π°ΠΌΠΈ) e, E спСцификатор Число с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ с экспонСнтой f, F спСцификатор Число с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ запятой g, G спСцификатор Число с ΠΏΠ»Π°Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π² Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠΌ написании (автоматичСски выбираСтся e ΠΈΠ»ΠΈ f) с спСцификатор ΠžΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ символ (Ρ†Π΅Π»ΠΎΠ΅ число ΠΈΠ»ΠΈ односимвольная строка) r спСцификатор Π›ΡŽΠ±ΠΎΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ ΠΊ строкС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ repr() s спСцификатор Π›ΡŽΠ±ΠΎΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ ΠΊ строкС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ str() % спСцификатор Π—Π½Π°ΠΊ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π°. Для задания ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ %% Π˜Π½Π΄Π΅ΠΊΡΡ‹ ΠΈ срСзы

Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ Π½Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ строки ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Ρ‡ΠΈΠ²Ρ‹ΠΌΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡΠΌΠΈ, поэтому ΠΊ Π½ΠΈΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ взятия элСмСнта ΠΏΠΎ индСксу ΠΈ срСзы:

>>> s = "транспорт"

>>> print s[0], s[-1]

Ρ‚ Ρ‚

>>> print s[-4:]

ΠΏΠΎΡ€Ρ‚

>>> print s[:5]

транс

>>> print s[4:8]

спор

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅:

ΠŸΡ€ΠΈ Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠΈ срСза Π½ΡƒΠΌΠ΅Ρ€ΡƒΡŽΡ‚ΡΡ Π½Π΅ символы строки, Π° ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΊΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ.

ΠœΠΎΠ΄ΡƒΠ»ΡŒ string

Π”ΠΎ Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Ρƒ строк появились ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π°Π΄ строками примСнялся ΠΌΠΎΠ΄ΡƒΠ»ΡŒ string. ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ дСмонстрируСт, ΠΊΠ°ΠΊ вмСсто Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠ· string ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ (кстати, послСднСС Π±ΠΎΠ»Π΅Π΅ эффСктивно):

>>> import string

>>> s = "one,two,three"

>>> print string.split(s, ",")

['one', 'two', 'three']

>>> print s.split(",")

['one', 'two', 'three']

Π’ вСрсии Python 3.0 Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ доступны Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, Π±ΠΎΠ»Π΅Π΅ Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π΄ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π² ΠΌΠΎΠ΄ΡƒΠ»Π΅ string.