J'ai un programme qui génère la sortie suivante:Python unicode popen ou erreur Popen lecture unicode
┌───────────────────────┐
│10 day weather forecast│
└───────────────────────┘
▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁
Tonight Sep 27 Clear 54 0 %
Tue Sep 28 Sunny 85/61 0 %
Wed Sep 29 Sunny 86/62 0 %
Thu Sep 30 Sunny 87/65 0 %
Fri Oct 01 Sunny 85/62 0 %
Sat Oct 02 Sunny 81/59 0 %
Sun Oct 03 Sunny 79/56 0 %
Mon Oct 04 Sunny 78/58 0 %
Tue Oct 05 Sunny 81/61 0 %
Wed Oct 06 Sunny 81/61 0 %
Last Updated Sep 27 10:20 p.m. CT
▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Cela ne semble pas bon format sur ce site, mais les lignes plus bas en haut et la partie supérieure les lignes au bas entraînent une erreur unicode.
Voici l'exemple de code pour os.popen
>>> buffer = popen('10day', 'r').read()
Traceback (most recent call last):
File "/home/woodnt/python/10_day_forecast.py", line 129, in <module>
line_lower(51)
File "/home/woodnt/python/lib/box.py", line 24, in line_lower
print upper_line * len
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-50: ordinal not in range(128)
>>> print buffer
┌───────────────────────┐
│10 day weather forecast│
└───────────────────────┘
>>>
est ici la même chose pour subprocess.Popen:
f = Popen('10day', stdout=PIPE, stdin=PIPE, stderr=PIPE)
o, er = f.communicate()
print o
┌───────────────────────┐
│10 day weather forecast│
└───────────────────────┘
print er
Traceback (most recent call last):
File "/home/woodnt/python/10_day_forecast.py", line 129, in <module>
line_lower(51)
File "/home/woodnt/python/lib/box.py", line 24, in line_lower
print upper_line * len
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-50: ordinal not in range(128)
Toutes les idées si cela peut être fait de travailler sans beaucoup de " sous le capot "travail? Je suis en train d'apprendre la programmation et en commençant par python
Je ne sais pas pourquoi le formatage est ainsi désactivé sur ce qui précède. Mes excuses. – narnie