2015-10-16 142 views
0

我對此完全陌生。我必須使用TORQUE提交作業,並且我想運行一個生成多個文件(數百萬個)的python程序。該程序已經寫好,並且工作正常。我還寫了一個測試腳本,用於打印'Hello World'並提交它,並且它工作,生成一個名爲'Hello World'的test.numbers。我採用了相同的腳本,而不是打印某些東西,我寫了python程序的名稱(我製作了可執行文件)。然而,程序在一秒鐘內完成(它應該需要幾個小時),只是生成一個沒有任何內容的script.numbers。我懷疑我的腳本實際上並沒有運行python程序。 任何想法或與Python程序生成多個文件的腳本示例? 謝謝在PBS腳本中運行一個python程序,生成多個輸出文件

+0

您能否將腳本添加到您的問題中? –

+0

(1)確保捕獲錯誤,例如,在腳本中添加「1/0」並查找「ZeroDivisionError」記錄的位置。 (2)嘗試一個創建* one *文件的Python腳本:'open('test.txt','w')。write('hello')'看看這個文件可以被檢索 - 是否存在持續作業運行區域允許您的腳本保存文件? – jfs

回答

0

這是一個非常普遍的問題,所以我只能給你提供非常一般的代碼並給你一些提示。

這是一個小的Python代碼片段,您可以創建n文件。當然,您必須根據自己的需求進行更改。

for n in xrange(n): 
    with open('file_' + str(n), 'w') as fw: 
     fw.write('Hello World') 

ñ是要創建的文件的數量。迭代步驟可能與您看起來非常不同。也許你迭代另一個項目列表。所以xrange(n)只是一個廣泛的例子。

如果您要在迭代步驟中創建多個文件,那麼必須以不同的方式命名所有文件。所以str(n)被添加到文件名稱不覆蓋已經存在的文件。如果您有不同的迭代(針對特定項目),則可以根據項目命名文件。

with - 寫入(打開)文件的語句是不需要關閉文件的好方法。它會爲你的。

fw.write("text")必須根據您的需要進行調整。在這裏,你可以添加複雜的函數,返回將被寫入文件的文本。您必須確保文本可以寫入文件(strunicode)。

相關問題