簡體   English   中英

格式化要寫入的文件

[英]Formatting files to be written

嗨,請問如何遍歷文本文件,在該行的最后一個索引處標識帶有0的行,並在檢索未刪除的行的同時刪除這些行。 然后還將輸出格式化為元組。

input.txt = 1 2 0 
            1 3 0 
            11 4 0.058529
            ...
            ...
            ...
            97 7 0.0789

所需的輸出應如下所示

[(11,4,{'volume': 0.058529})]

謝謝

fileinput.input() inplace=1傳遞到fileinput.input()以修改該文件。 循環中打印的所有內容都將寫入文件:

import fileinput

results = []
for line in fileinput.input('input.txt', inplace=1):
    data = line.split()
    if data[-1].strip() == '0':
        print line.strip()
    else:
        results.append(tuple(map(int, data[:-1])) + ({'volume': float(data[-1])}, ))

print results

如果input.txt包含:

1 2 0
1 3 0
11 4 0.058529
97 7 0.0789

該代碼將打印:

[(11, 4, {'volume': 0.058529}), 
 (97, 7, {'volume': 0.0789})]

並且input.txt的內容變為:

1 2 0
1 3 0

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM