2017-02-02 6 views
0

Ich mag die letzte Nummer aus der Liste meiner Datei extrahieren:Wie bekomme ich die ganze Nummer vor dem Leerzeichen?

::1 - - [18/Jan/2017:09:01:08 +0530] "GET /music/create_album/ HTTP/1.1" 200 5857 
::1 - - [19/Jan/2017:22:29:46 +0530] "GET /button/button1.js HTTP/1.1" 404 4663 

Dies ist meine Datei und ich möchte nur die letzte Nummer 4663. und Split-Funktion gibt einen Fehler zurück. So verwendete ich:

f = open("access.log.txt", "r") 
for line in f: 
    l = line.rstrip('\t') 
print(l[-10:]) 

aber es zeigt 404 4663. ich die ganze Zahl nach dem Raum wollen.

+4

'Druck sein wird (l [-4:]) '? – depperm

Antwort

0

die Linie umkehren, die Zeichen erhalten, die Ziffern sind in umgekehrter Folge:

>>> text = 'abc 1234' 
>>> ends = '' 
>>> for ch in text[::-1]: 
...  if ch.isdigit(): 
...   ends +=ch 
...  else: 
...   break 
>>> ends[::-1] 
'1234' 

Sie können mit RegEx versuchen, aber ich bin mir nicht sicher, ob es schneller

Verwandte Themen