2014-07-14 17:06 GMT+02:00 Manlio Perillo <manlio.peri...@gmail.com>:
> 2014-07-14 16:43 GMT+02:00 Giampaolo Rodola' <g.rod...@gmail.com>: > > > [...] > >> > [...] >>> >>>> Non è un caso che proprio i progetti fortemente basati sull'I/O come >>>> MySQL-python, Twisted e gevent sono quelli che ancora latitano perchè >>>> (esperienza personale fatta con pyftpdlib) far coesistere due tipi che >>>> prima erano intercambiabili e di colpo non lo sono più, specialmente in >>>> quel tipo di applicazioni, è veramente un casino. >>>> >>> >>> Hey, aspetta un attimo. >>> str e unicode non sono **mai** stati intercambiabili, a meno di >>> applicazioni affette da gravi bug logici e che dipendevano dall'encoding di >>> default. >>> >>> > [...] >>> >> >> Mi riferisco a: >> >> >>> u"a" + "b" >> u'ab' >> >>> "a" == u"a" >> True >> >> >> > In [1]: u"à" == "à" > /usr/bin/ipython2:1: UnicodeWarning: Unicode equal comparison failed to > convert both arguments to Unicode - interpreting them as being unequal > #!/usr/bin/python2 > Out[1]: False > Ecco, classico esempio di codice che funziona "il più delle volte" ma nasconde un baco e che Python 3 ha risolto lanciando TypeError. E' esattamente a questo che mi riferivo: sono intercambiabili nel senso che li puoi mischiare (e come in questo caso ottenere risultati errati) e anche formattarli entrambi (cosa che non puoi fare coi bytes in python 3 e che è quello che crea maggiormente problemi alla gente di twisted e mercurial). -- Giampaolo - http://grodola.blogspot.com
_______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python