Bitte beachten Sie folgende Bild, das das Format der Textdatei zeigt. Ich muss die Dimensionen der Datenmatrix extrahieren, die durch die erste Zeile in der Datei angezeigt wird, hier 49 * 70 * 1 für den Fall, der durch das Bild gezeigt wird. Beachten Sie, dass die Länge des Namens "gd_fac" variieren kann. Wie kann ich diese Zahlen als Ganzzahlen extrahieren? Ich benutze Python 3.6.extrahieren Sie die Abmessungen aus den Kopfzeilen der Textdatei
Antwort
Spezifikation ist nicht ganz klar. Ich gehe davon aus, dass die gewünschten Informationen immer in der ersten Zeile stehen und immer in Klammern stehen. Danach:
with open(filename) as infile:
line = infile.readline()
string = line[line.find('(')+1:line.find(')')]
lst = string.split('x')
Dies erstellt die Liste lst = [49, 70, 1]
.
Was geschieht hier:.. Zuerst habe ich öffnen Sie die Datei (Sie filename
mit dem Namen der Datei als String Die with ... as ...
Struktur stellt sicher, ersetzen müssen, dass die Datei nach der Verwendung geschlossen wird Dann las ich die erste Danach wähle ich nur die Teile der Linie, die nach dem Öffnen fallen, (
, und vor dem Schließen paren )
. Schließlich breche ich die Zeichenfolge in Teile, mit dem Zeichen x
als Trennzeichen.Das erstellt eine Liste, die enthält die Werte in der ersten Zeile der Datei, die zwischen Klammern stehen und durch x
getrennt werden.
Was das ist, sucht es nach "gd_fac " dann, wenn es da ist, entfernt alle unnötigen Sachen und ersetzt sie mit genau dem, was Sie wollen.
with open('test.txt', 'r') as infile:
for line in infile:
if("gd_fac" in line):
line = line.replace("gd_fac", "")
line = line.replace("x", "*")
line = line.replace("(","")
line = line.replace(")","")
print (line)
break
OUTPUT: "49x70x1"
Da Sie, dass die Länge von 'gd_fac' van variabel sein, wird unter Verwendung beste Lösung für reguläre Ausdrücke erwähnt haben.
import re
with open("a.txt") as fh:
for line in fh:
if '(' in line and ')' in line:
dimension = re.findall(r'.*\((.*)\)',line)[0]
break
print dimension
Ausgang:
'49x70x1'
- 1. Verknüpfungen aus Textdatei extrahieren
- 2. Zeilen aus Textdatei extrahieren
- 3. Mehrere übereinstimmende Muster aus der Textdatei extrahieren
- 4. PL/SQL extrahieren Spalten aus der Textdatei
- 5. So extrahieren Sie die Zahlen aus einer Textdatei
- 6. Extrahieren Sie Text aus der Textdatei, produziert Fehler Batch-Datei
- 7. So extrahieren Sie ein Wort aus der Textdatei
- 8. Extrahieren von Daten aus Zeilen einer Textdatei
- 9. Extrahieren von benutzerdefinierten Tags aus Textdatei
- 10. Ignorieren Kopfzeilen in der Mitte der Textdatei mit Matlab
- 11. Extrahieren von Token aus einer Textdatei?
- 12. Nummer aus einer formatierten Textdatei extrahieren Java
- 13. , wie die verschiedenen Felder aus der Textdatei durch den allgemeinen Ausdruck in PHP zu extrahieren
- 14. Extrahieren Sie den Namen der Website aus der URL
- 15. So extrahieren Sie Zeilen aus Textdatei "Block" in Schleife
- 16. Erste und letzte Spalte aus der Textdatei extrahieren
- 17. Wollen Sie Werte aus einer Textdatei extrahieren regex wie oben
- 18. Extrahieren von Spalten aus Textdatei mit Powershell
- 19. So extrahieren Sie den Monat aus der Spalte
- 20. Entfernen Sie die Kopfzeilen der Seiten, ohne die Kopfzeilen zu entfernen.
- 21. Extrahieren Sie den Text aus der HTML-Zeichenfolge mit JavaScript
- 22. Eine IP aus einer Regex ausschließen, die IPs aus der Textdatei extrahieren
- 23. Zeichenkette aus den Zitaten extrahieren
- 24. Extrahieren Sie die Nummer aus SPFieldNumber Objekt
- 25. Ändern Sie die Abmessungen von JButton
- 26. jqGrid - So heben Sie die Auswahl der Kopfzeilen-Checkbox auf
- 27. Entfernen Sie teilweise Duplikate aus der Textdatei
- 28. Extrahieren einer Zeichenfolge aus einer Textdatei in Python 2.7.5
- 29. Extrahieren von wiederholten Mustern aus einer Textdatei in Python
- 30. Daten aus einer Textdatei in eine Ausgabedatei extrahieren
Ich mag Ihre Lösung. =) – thesonyman101
upvoted für Ihre nette Antwort. Minen ein wenig länger, du hast es wirklich schön und einfach gemacht. – thesonyman101