J'avais des problèmes avec l'utilisation d'unicode en python, donc j'ai écrit ce programme, et je suis confus par les résultats. Chaque fois que je l'exécute, différents caractères me donnent l'erreur # 2, ce qui signifie que utf32, utf16 et utf8 ont tous donné des erreurs quand j'ai essayé d'écrire un caractère Unicode dans mon fichier de test. Jamais les mêmes. Est-ce un problème avec mon programme, ou est-ce que je fais quelque chose que Python n'est pas conçu pour gérer?Problèmes avec unicode en Python
for a in range(65535):
try:
open('test_text.txt','w').write(unichr(a).encode("utf32"))
if len(open('test_text.txt','r').read()) == 0:
print unichr(a) + ' Error #1 #' + str(a)
except IOError:
try:
open('test_text.txt','w').write(unichr(a).encode("utf16"))
except IOError:
try:
open('test_text.txt','w').write(unichr(a).encode("utf8"))
except IOError:
print unichr(a) + ' Error #2 #' + str(a)
except UnicodeEncodeError:
print unichr(a) + ' Error #3 #' + str(a)
raw_input('\n\nEnter char to end:')
Quelles sortes d'erreurs voyez-vous? Peux-tu donner quelques exemples? – ethan
Quel problème avez-vous eu qui vous a amené à écrire ce programme? Il peut être logique d'ouvrir une autre question sur les problèmes que vous aviez précédemment. – user2357112
Je suppose que vous pourriez avoir des problèmes parce que vous ouvrez le même fichier pour lire au moins 65535 fois, sans le fermer, et en l'ouvrant simultanément pour lire. Toutes sortes de problèmes de tampons sont de cette façon. Et pas d'erreur ici ... – Tiago