π ΠΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΡ Π² Python: ΠΏΠΎΡΠ°Π³ΠΎΠ²ΠΎΠ΅ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ
ΠΠ»Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΡ Π² Python Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π³ΠΎΠ².
- Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Π²Π°Ρ ΡΠ°ΠΉΠ» Ρ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΡΠΎΡ ΡΠ°Π½Π΅Π½ Ρ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠΎΠΉ UTF-8.
- ΠΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΡΡΡΠΎΠΊΡ Π² Π½Π°ΡΠ°Π»ΠΎ Π²Π°ΡΠ΅Π³ΠΎ ΡΠΊΡΠΈΠΏΡΠ°:
# -*- coding: utf-8 -*-
ΠΡΠ° ΡΡΡΠΎΠΊΠ° ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΡ Python, ΡΡΠΎ ΠΈΡΡ ΠΎΠ΄Π½ΡΠΉ ΠΊΠΎΠ΄ Π·Π°ΠΏΠΈΡΠ°Π½ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠΈ UTF-8.
Π’Π΅ΠΏΠ΅ΡΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ Π² ΡΠ²ΠΎΠ΅ΠΌ ΠΊΠΎΠ΄Π΅.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ:
print("ΠΡΠΈΠ²Π΅Ρ, ΠΌΠΈΡ!")
ΠΡΠ²ΠΎΠ΄:
ΠΡΠΈΠ²Π΅Ρ, ΠΌΠΈΡ!
ΠΠ΅ΡΠ°Π»ΡΠ½ΡΠΉ ΠΎΡΠ²Π΅Ρ
ΠΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΡ Π² Python
Python ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΌΠΎΡΠ½ΡΠΌ ΡΠ·ΡΠΊΠΎΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Ρ ΡΠΈΡΠΎΠΊΠΈΠΌΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ. ΠΠ΄Π½ΠΈΠΌ ΠΈΠ· Π½ΠΈΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°Π±ΠΎΡΠ° Ρ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΠ΅ΠΉ. Π Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠ°ΡΡΠ΅ Ρ ΡΠ°ΡΡΠΊΠ°ΠΆΡ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΡ Π² Python ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Ρ Π²Π°ΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΠΊΠΎΠ΄Π°.
1. ΠΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠ° ΡΠ°ΠΉΠ»Π°
ΠΠ΅ΡΠ²ΡΠΌ ΡΠ°Π³ΠΎΠΌ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΠ΅ΠΉ Π² Python ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠΉ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠΈ ΡΠ°ΠΉΠ»Π°. ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΠΎΠΉ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠΎΠΉ Π΄Π»Ρ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΡ ΡΠ²Π»ΡΠ΅ΡΡΡ UTF-8. ΠΠ»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ ΡΠΊΠ°Π·Π°ΡΡ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΡ ΡΠ°ΠΉΠ»Π°, Π΄ΠΎΠ±Π°Π²ΡΡΠ΅ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΡΡΡΠΎΠΊΡ Π² Π½Π°ΡΠ°Π»ΠΎ Π²Π°ΡΠ΅Π³ΠΎ ΡΠΊΡΠΈΠΏΡΠ°:
# -*- coding: utf-8 -*-
ΠΡΠ° ΡΡΡΠΎΠΊΠ° ΡΠΎΠΎΠ±ΡΠ°Π΅Ρ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠ°ΡΠΎΡΡ Python, ΡΡΠΎ ΡΠΊΡΠΈΠΏΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΈΠ½ΡΠ΅ΡΠΏΡΠ΅ΡΠΈΡΠΎΠ²Π°Π½ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ UTF-8 ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠΈ.
2. Π Π°Π±ΠΎΡΠ° Ρ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ
ΠΠΎΡΠ»Π΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠΉ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠΈ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΠ΅ΠΉ Π² Python, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΡΡΠΎΠΊΠΎΠ²ΡΠ΅ Π»ΠΈΡΠ΅ΡΠ°Π»Ρ. ΠΠ°ΠΆΠ½ΠΎ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΡ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Ρ Π²Π½ΡΡΡΠΈ ΡΡΡΠΎΠΊΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΎΠ±ΡΡΠ½ΡΡ ΠΊΠ°Π²ΡΡΠ΅ΠΊ:
# ΠΡΠΈΠΌΠ΅Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΠ΅ΠΉ
text = 'ΠΡΠΈΠ²Π΅Ρ, ΠΌΠΈΡ!'
print(text)
ΠΡΠ²ΠΎΠ΄:
ΠΡΠΈΠ²Π΅Ρ, ΠΌΠΈΡ!
3. Π Π°Π±ΠΎΡΠ° Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ Π² ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠ΅ UTF-8
ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΈΡΠ°ΡΡ ΠΈΠ»ΠΈ Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ Π² ΡΠ°ΠΉΠ», ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ Π²Ρ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΠ΅ Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ Π² ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠ΅ UTF-8. ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ ΡΡΠ΅Π½ΠΈΡ ΠΈ Π·Π°ΠΏΠΈΡΠΈ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π² ΡΠ°ΠΉΠ»:
# Π§ΡΠ΅Π½ΠΈΠ΅ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΡ ΠΈΠ· ΡΠ°ΠΉΠ»Π°
with open('ΡΠ°ΠΉΠ».txt', 'r', encoding='utf-8') as f:
content = f.read()
print(content)
# ΠΠ°ΠΏΠΈΡΡ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΡ Π² ΡΠ°ΠΉΠ»
with open('ΡΠ°ΠΉΠ».txt', 'w', encoding='utf-8') as f:
f.write('ΠΡΠΈΠ²Π΅Ρ, ΠΌΠΈΡ!')
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ encoding='utf-8' ΠΏΡΠΈ ΠΎΡΠΊΡΡΡΠΈΠΈ ΡΠ°ΠΉΠ»Π° Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ ΠΈ Π·Π°ΠΏΠΈΡΠΈ, ΡΡΠΎΠ±Ρ ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΠΌΡ ΡΠ°Π±ΠΎΡΠ°Π΅ΠΌ Ρ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠΎΠΉ UTF-8.
4. ΠΠΎΠ΄ΡΠ»Ρ locale
Python ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΌΠΎΠ΄ΡΠ»Ρ locale, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ, Π²ΠΊΠ»ΡΡΠ°Ρ ΡΠ°Π±ΠΎΡΡ Ρ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΠ΅ΠΉ. ΠΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΡΠΎΡ ΠΌΠΎΠ΄ΡΠ»Ρ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ ΠΈ ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°ΡΡ Π΄Π°ΡΡ, ΡΠΈΡΠ»Π° ΠΈ Π²Π°Π»ΡΡΡ Ρ ΡΡΠ΅ΡΠΎΠΌ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΡ. ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ:
import locale
# Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π»ΠΎΠΊΠ°Π»ΠΈ
locale.setlocale(locale.LC_ALL, 'ru_RU.UTF-8')
# Π€ΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠΈΡΠ»Π°
number = 1234567890.123456
formatted_number = locale.format('%0.2f', number)
print(formatted_number)
# Π€ΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ Π΄Π°ΡΡ
date = datetime.datetime.now()
formatted_date = date.strftime('%x')
print(formatted_date)
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ setlocale, ΡΠΊΠ°Π·ΡΠ²Π°Ρ ΠΊΠΎΠ΄ ΡΡΡΠ°Π½Ρ ΠΈ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΡ UTF-8. ΠΠ°ΡΠ΅ΠΌ ΠΌΡ ΡΠΎΡΠΌΠ°ΡΠΈΡΡΠ΅ΠΌ ΡΠΈΡΠ»ΠΎ ΠΈ Π΄Π°ΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΡ Π½Π°ΡΡΡΠΎΠ΅ΠΊ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΡ Π² Python. Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠΉ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠΈ ΡΠ°ΠΉΠ»Π°, ΡΠ°Π±ΠΎΡΠ° Ρ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌΠΈ, ΡΡΠ΅Π½ΠΈΠ΅ ΠΈ Π·Π°ΠΏΠΈΡΡ Π² ΡΠ°ΠΉΠ»Ρ Π² ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠ΅ UTF-8, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΌΠΎΠ΄ΡΠ»Ρ locale - Π²ΡΠ΅ ΡΡΠΎ Π²Π°ΠΆΠ½ΡΠ΅ Π°ΡΠΏΠ΅ΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΌΠΎΠ³ΡΡ Π²Π°ΠΌ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΠΊΠΈΡΠΈΠ»Π»ΠΈΡΠ΅ΠΉ Π² Python.