2016-08-03 22 views
0
entfernen

Ich versuche etwas Ähnliches wie awk in Python zu tun, um eine bestimmte Spalte abzurufen, muss aber die Spaltenüberschrift entfernen. Gibt es eine schnelle einfache Möglichkeit, den Header aus einer Spalte nach der Verwendung von Split zu entfernen? Unten ist mein Beispielcode.Header aus der Spalte

du = '''Filesystem  Size Used Avail Use% Mounted on 
/dev/sda3   30G 4.0G 26G 14%/
devtmpfs   907M  0 907M 0% /dev 
tmpfs   921M 152K 921M 1% /dev/shm 
tmpfs   921M 8.5M 912M 1% /run 
tmpfs   921M  0 921M 0% /sys/fs/cgroup 
/dev/sda1  509M 291M 219M 58% /boot 
Users   239G 164G 76G 69% /media/sf_Users 
tmpfs   185M 12K 185M 1% /run/user/1002 
tmpfs   185M  0 185M 0% /run/user/0''' 

for line in du.splitlines(): 
    fields = line.split() 
    f4 = (fields[4].strip('%')) 
    print(f4) 

Stromausgang:

Use 
14 
0 
1 
1 
0 
58 
69 
1 
0 

gewünschte Ausgabe:

14 
0 
1 
1 
0 
58 
69 
1 
0 
+1

Sie eine Datei in der Realität zu lesen? Und wenn ja, hat Ihre Datei immer einen Header? – Dataman

Antwort

1

Sie können dies tun:

for line in du.splitlines()[1:]: 
    fields = line.split() 
    f4 = (fields[4].strip('%')) 
    print(f4) 

# 14 
# 0 
# 1 
# 1 
# 0 
# 58 
# 69 
# 1 
# 0 
+0

Genau das, was ich gesucht habe. Hat super funktioniert. Vielen Dank! – MBasith

+0

Gern geschehen :-) Sie müssen jedoch vorsichtig sein, dass dies die erste Zeile überspringt, ob es Header gibt oder nicht. –