我會給出一個可能的解釋(當然有很多),而不用爲你編碼。與裸露的代碼片段相比,我認爲它更有價值。這個例子假設你在寫你的文件之前沒有讀取整個文件的內存限制。
模塊csv
是操縱CSV文件的參考模塊,它集成在您的標準Python發行版http://python.org中。
一旦其用法是明確的你,與上下文管理工作打開和處理CSV文件,如在文檔的網站在這條巨蟒2爲例進行說明:
>>> import csv
>>> with open('largefile.csv', 'rb') as csvfile:
... spamreader = csv.reader(csvfile, delimiter=' ', quotechar='|')
... for row in spamreader:
... # Store data in your data structure
你需要指定在您的特定CSV文件中使用的csv.reader
的分隔符參數。它可以是一個逗號,或一個標籤,或一組空格。
雖然spamreader讀取輸入文件的每一行,但您可以在讀取操作之前將每行的每個值存儲在您準備的數據結構中。在你的情況下,一個列表,基本上是一個矩陣列表,是一個不錯的選擇,因爲以後你需要以串行方式獲取你的數據。
您可以使用list.append
方法將每行的每個項目推送到列表尾部。由於您需要按列掃描值,並且spamreader將按行工作,因此可以創建列表的列表,以便您可以非常輕鬆地在此矩陣中表示該表。
矩陣準備就緒後,可能使用上下文管理器編寫文件。
>>> with open('columnx.sh', 'a') as the_file:
... the_file.write('Hello\n')
這是#2另一個問題文件寫的一個例子,在https://stackoverflow.com/a/6160082/3789324
在這種情況下,你需要file.write
方法之前插入一個嵌套for
循環中,你可以循環所有的列和列的所有元素。
其中產品你只是從列表中獲得的數量file.write
方法應先寫
s1 = "sudo google-chrome -c -a tt1"
字符串,然後該字符串
s2 = "sudo google-chrome -a tt1 -d item -u item"
。
要替換字符串中的項目編號,你可以連接數字的字符串,是這樣的:
s = "sudo google-chrome -a tt1 -d " + str(item) + " -u " + str(item)"
所以,現在你可以在每個不同的重複中的每個元素通過S1和S2的file.write
寫方法的列:
this_file.write(s1 + "\n" + s2 + "\n")
而你有你的代碼片段。
我認爲你不能要求人們爲你做代碼... – decadenza
瞭解如何使用模式將數據寫入文件。另外嘗試讀取文件並將數據附加到它。這將有助於開始編寫代碼 –
我不要求爲我編碼,我只是想要一些建議和提示,這是所有兄弟 – AbouSDN