Fai un cambiamento per volta in particolare, hai cambiato tree.write()
se lo fai tornare tree.write(sys.argv[2]) vedrai che funziona in pratica, tree.write se riceve un nome di un file, lo apre nel modo per lui corretto, e tutto funziona se invece vuoi dargli tu un handle già aperto, siccome ElementTree ti permette di specificare l'encoding in cui generare un file, deve avere aperto il file in modalità "scrittura byte" tu invece l'hai aperto in modalità "scrittura testo (utf-8)" che è il default l'altro modo quindi per sistemarlo, è cambiare open(sys.argv[2], 'w') in open(sys.argv[2], 'wb') già che ci siamo, invece di aprire e chiudere manualmente i file, prova ad usare l'istruzione "with" http://docs.python.org/3.3/reference/compound_stmts.html#the-with-statement with open(sys.argv[1], 'r') as in, open(sys.argv[2], 'wb') as out: # work with in & out -- xmpp: berda...@gmail.com bitmessage: BM-2cTYXfGiSTsnx3righ6aHcJSWe4MV17jDP gpg fingerprint: 3F8D53518012716C4EEF7DF67B498306B3BF75A0 (used just for signing commits) _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python