Ipython: рдЧрд▓рдд рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдореЗрдВ рдЕрдЬрдЧрд░ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде рджреБрд░реНрдШрдЯрдирд╛

рдХреЛ рдирд┐рд░реНрдорд┐рдд 17 рд╕рд┐рддре░ 2016  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: ipython/ipython

%run # -*- coding: utf-8 -*- рдХреЗ рд╕рд╛рде рдЪрд┐рд╣реНрдирд┐рдд рдФрд░ рдЧреИрд░-utf8 рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╕рд╣реЗрдЬреА рдЧрдИ рдПрдХ рдкрд╛рдпрдерди рдлрд╝рд╛рдЗрд▓ рдХреЛ рдирд┐рдВрдЧ ipython (рдЦреЛрд▓ рдкрд░ рд╡рд╛рдкрд╕) рдХреЛ рдХреНрд░реИрд╢ рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдХреНрд░реИрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдлрд╝рд╛рдЗрд▓ рдХреЛ рдпрд╣ рдХрд░рдирд╛ рд╣реЛрдЧрд╛:

  • рдПрдХ рдЧреИрд░-рдЕрд╕реАрд╕реА рд╡рд░реНрдг рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ
  • рдПрдХ рддреНрд░реБрдЯрд┐ рд╣реЛрддреА рд╣реИ (рдЬрдм рдкрд╛рдпрдерди 3 рдХреЗ рд╕рд╛рде рдЪрд▓рд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдПрдХ рд╕реНрдЯреИрдХ рдЯреНрд░реЗрд╕ рдЙрддреНрдкрдиреНрди рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреЛрдИ рджреБрд░реНрдШрдЯрдирд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ)
  • рдЧрд▓рдд рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХреЗ рд╕рд╛рде рд╕рд╣реЗрдЬрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ

рдпрд╣рд╛рдВ рдПрдХ рдЫреЛрдЯреА рд╕реА рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ рдЬреЛ рдЗрд╕реЗ рдкреБрди: рдкреНрд░рд╕реНрддреБрдд рдХрд░ рд░рд╣реА рд╣реИ, рдЬрд┐рд╕реЗ рдЖрдИрдПрд╕рдУ-8859-15 рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЧрдпрд╛ рд╣реИ, рд╕рд╛рде рдореЗрдВ рд╕реНрдЯреИрдХ рдЯреНрд░реЗрд╕ рдХреЗ рд╕рд╛рде:
рдлрд╝рд╛рдЗрд▓реЗрдВ.рдЬрд╝рд┐рдк

%run wrong_encoding.py
...
... <long trace>
...
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe9 in position 78: invalid continuation byte
 python3 -c "import IPython; print(IPython.sys_info())"
{'commit_hash': '5c9c918',
 'commit_source': 'installation',
 'default_encoding': 'UTF-8',
 'ipython_path': '/usr/lib/python3.4/site-packages/IPython',
 'ipython_version': '5.1.0',
 'os_name': 'posix',
 'platform': 'Linux-3.16.7-42-desktop-x86_64-with-SuSE-13.2-x86_64',
 'sys_executable': '/usr/bin/python3',
 'sys_platform': 'linux',
 'sys_version': '3.4.5 (default, Jul 03 2016, 13:55:08) [GCC]'}

рдмреЗрд╢рдХ, рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкрд╣рд▓реЗ рд╕реНрдерд╛рди рдкрд░ рд╕рд╣реА рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╕рд╣реЗрдЬрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдерд╛ред

рд▓реЗрдХрд┐рди рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ рд╕рддреНрд░ рдирд╖реНрдЯ рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдФрд░ рдПрдХ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реАрдкреВрд░реНрдг рд╕рдВрджреЗрд╢ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдореИрдВ рддреЗрд░рд╣ рдЬрдВрдЬреАрд░ рдЯреНрд░реЗрд╕рдмреИрдХ рдЧрд┐рдирддрд╛ рд╣реВрдВ - рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд░рд┐рдХрд░реНрд╕рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ рдХрдИ рд▓реЛрдЧреЛрдВ рдХреЛ рдЖрдкрдХреЛ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХрд╛ рдкреБрд░рд╕реНрдХрд╛рд░ рдорд┐рд▓рдирд╛ рдЪрд╛рд╣рд┐рдПред ;-)

рд╕рднреА 3 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рдореИрдВ рддреЗрд░рд╣ рдЬрдВрдЬреАрд░ рдЯреНрд░реЗрд╕рдмреИрдХ рдЧрд┐рдирддрд╛ рд╣реВрдВ - рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд░рд┐рдХрд░реНрд╕рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ рдХрдИ рд▓реЛрдЧреЛрдВ рдХреЛ рдЖрдкрдХреЛ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХрд╛ рдкреБрд░рд╕реНрдХрд╛рд░ рдорд┐рд▓рдирд╛ рдЪрд╛рд╣рд┐рдПред ;-)

9955 рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдореЛрдЯрд╛ рд╕рдорд╛рдзрд╛рди рд╣реИ; рддреНрд░реБрдЯрд┐ рдмрд╣реБрдд рдЬрд╛рдирдХрд╛рд░реАрдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ IPython рдХреЛ рдХреНрд░реИрд╢ рдирд╣реАрдВ рдХрд░рддреА рд╣реИред

рдпрджрд┐ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рддрдХ рдкрд╣реБрдВрдЪрдирд╛ рдЖрд╕рд╛рди рдирд╣реАрдВ рд╣реИ, рддреЛ рдпрд╣рд╛рдВ рд╡рд╣ рдХрдорд╛рдВрдб рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдореИрдВрдиреЗ рдЕрдкрд░рд╛рдзреА рдХреЛ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдерд╛:

find . -name "*.py" -exec file {} \; | grep -v ASCII | grep -v UTF-8 | grep -v empty

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

RinaldoB picture RinaldoB  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

ghost picture ghost  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

alvations picture alvations  ┬╖  4рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

mpacer picture mpacer  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

gregcaporaso picture gregcaporaso  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ