2016-04-08 7 views
0

Wenn ich versuche, dieses Skript in Verbindung mit dem Befehl cat zu verwenden, bekomme ich nur den ersten Eintrag und nicht alle. Hier ist das Skript:Python gibt nur die erste Zeile der Liste zurück

for line in sys.stdin: 
    line  = line.strip() #strip out carriage return 
    key_value = line.split(",") #split line, into key and value, returns a list 
    key_in  = key_value[0] 
    value_in = key_value[1] 

#print key_in 
if(value_in.isdigit()==True): 
    print('%s\t%s' % (key_in, value_in)) 
elif(value_in == 'ABC'): 
    print('%s\t%s' % (key_in, value_in)) 

Ich bin dann Cat-Befehl auf die Zieldateien und das Skript ausgeführt. Gedanken?

+0

Ich stelle mir vor, Sie werden immer die letzte nicht das erste, Ihre wenn und Druck außerhalb der Schleife –

+0

Können Sie ein Beispiel Ihrer Eingaben geben, und der Ausgang Sie es erwarten? – Mureinik

Antwort

2

Ihr Einzug sieht falsch aus. Vielleicht suchen Sie das?

for line in sys.stdin: 
    line  = line.strip() #strip out carriage return 
    key_value = line.split(",") #split line, into key and value, returns a list 
    key_in  = key_value[0] 
    value_in = key_value[1] 

    #print key_in 
    if(value_in.isdigit()==True): 
     print('%s\t%s' % (key_in, value_in)) 
    elif(value_in == 'ABC'): 
     print('%s\t%s' % (key_in, value_in)) 
Verwandte Themen