Il 28/11/2017 14:30, Gabriele Battaglia ha scritto:
Buon pomeriggio.
Ho un errore in questo script. Con Python 2 andava tutto bene, il 3.6.2 invece,
si comporta in maniera diversa.
Questo stralcio è la parte che si occupa di fare il login ad un server telnet.
***
login:' Gabrybat
test user Gabrybat <class 'str'>
Traceback (most recent call last):
File "bici3.py", line 406, in <module>
user, password = Apri("Nuovo", "")
File "bici3.py", line 31, in Apri
tn.write(user+"\r\n") # tn = telnetlib.Telnet()
File
"C:\Users\GBattaglia\AppData\Local\Programs\Python\Python36-32\lib\telnetlib.py", line
287, in write
if IAC in buffer:
TypeError: 'in <string>' requires string as left operand, not bytes
C:\Dropbox\Py>
Tuttavia io ho passato una stringa, ne ho anche stampato la classe nella riga
"test user".
Credo che l'interprete python abbia più conoscenza del codice di quella che hai
tu :)
Qualcuno ha idea del perchè accada ciò?
La gestione del testo è cambiata completamente in python3:
https://docs.python.org/3.0/whatsnew/3.0.html#text-vs-data-instead-of-unicode-vs-8-bit
http://www.diveintopython3.net/strings.html
--
Riccardo Magliocchetti
@rmistaken
http://menodizero.it
_______________________________________________
Python mailing list
Python@lists.python.it
https://lists.python.it/mailman/listinfo/python