34512340 plain brackets 0.50 30
56756777 100mm bolts 0.20 0
90673412 L-shaped brackets 1.20 30
ich diese Textdatei habe, und ich möchte am Ende jeder Zeile den Wert zu nehmen, etwas zu tun, um es und es dann ohne Rückschreib Wechsel die Formatierung des Textes. Im Grunde ändern Sie einfach den letzten Wert jeder Zeile.Amend Wert am Ende einer Zeile auf einem Textdatei - Python
Mein aktueller Ansatz besteht darin, die Zeile in eine Liste von Werten unter Verwendung der Abstände/Tabs aufzuteilen, aber ich weiß nicht, wie ich die Leerzeichen/Tabs wieder einfügen kann, wie zuvor.
Irgendwelche Vorschläge?
hier ist auch meine Mock-up-Code ..
import re
import fileinput
with open('stock.txt', 'r') as stock:
stockList = stock.readlines()
print(stockList[0])
print(re.split(r'\t+', stockList[0].rstrip('\t').rstrip('\n')))
with fileinput.FileInput('test.txt', inplace=True) as file:
for line in file:
print(line.replace(stockList[0], ammendedLineWithEditedValue), end='')
, das ist keine schlechte Idee, aber man konnte verwenden, um den 'csv' Modul als auch. – zmo
Ich wollte CSV vermeiden, weil das Layout und der Code des Textes von diesem Layout abhängen. Aber danke :) –
Gibt es immer 1 + Tabs + Ziffern am Ende der Zeile? Grundsätzlich können Sie dafür eine Regex verwenden, wenn Sie sicher sind, dass die Daten unter einem bestimmten Muster liegen. –