Gewusst wie: drucken/anzeigen der Ausgabe der telnet-session im terminal-Fenster (Python)

Kann mir jemand helfen zu verstehen, wie Druck in das terminal-Fenster funktioniert?
Hier ist ein test-Skript

test_script.py

import telnetlib
HOST = "10.1.1.151"
tn = telnetlib.Telnet(HOST)
tn.open(HOST)
test_var = ["test"]
print test_var
tn_read =  tn.read_very_eager()
print tn_read

Ausgabe, wenn das Skript ausgeführt wird, vom terminal:

$ python test_script.py
  ['test']

tn_read sollte so etwas wie "Benutzername :" aber es wird nicht gedruckt, die in das terminal-Fenster.

Wenn ich ihn aus dem interpreter habe ich das bekommen, was erwartet wird:

 >>> tn.read_very_eager()
 '\n\rUser Name : '

Warum oder was muss getan werden, um die folgende Ausgabe beim Aufruf des Skripts aus dem terminal ?

 $ python test_script.py
  ['test']
  User Name :  
  • die Existenz von "\r", der Wert macht mich Frage mich, ob es lohnt sich mit .lstrip() auf die tn_read variable : d.h. druckt tn_read.lstrip() die Dinge besser zu machen.
  • Nein, es macht keinen Unterschied.
  • Vielleicht schauen Sie in der Dokumentation, wenn es andere Funktionen, wie vielleicht einige tn.read_not_so_eager() (nur ein Beispiel) oder so etwas wie tn.read().
  • Ich habe versucht, verschiedene Funktionen (tn.read_unitl(), read_eager()) aber keiner zu sehen, der die Werte, wenn ich das Skript aus dem terminal.
  • drucken sollte funktionieren terminal. versuchen Sie so etwas wie print type(tn_read), tn_read, um herauszufinden, wenn das Modul das erwartete Ergebnis zurückgibt. wenn es gibt ein Objekt zurück, enstead Schnur, vielleicht haben Sie es ändern müssen, um die string-Repräsentation erste.
  • >>> tn.open(HOST) >>> tn_read = tn.read_very_eager() >>> type(tn_read), tn_read (<type 'str'>, '\n\rUser Name : ') >>>
  • Das geänderte Skript: test_var = ["test"] print test_var tn_read = tn.read_very_eager() print type(tn_read), tn_read Ausgabe auf dem terminal: `$ python test_script.py ['test'] <type 'str'> . "User Name :" wird nicht gedruckt.

InformationsquelleAutor flamenco | 2014-09-22
Schreibe einen Kommentar