2016-04-11 90 views
0

我對Python比較陌生,需要通過Abaqus來運行python宏。我正在打開文件,例如「nonsym1,nonsym2,nonsym3」。我試圖用循環做到這一點。該代碼打開nonsym1(在abaqus中)並對其執行一些操作,然後假定回送並對其他文件執行相同的操作。下面是我想要的代碼...For循環在Python中打開文件

for i in range (1,10): 
    filename = 'nonsym(i)' 
    step = mdb.openStep(
     'C:/Users/12345678/Documents/Inventor/Aortic Dissection/%s.stp' %filename, 
     scaleFromFile=OFF) 

我的主要問題是從事實%S目錄中的我想不起來?...... error message when trying to run this macro不知道如何以最佳方式處理這個,所以任何幫助將非常感謝!仍在學習!

+0

您可以將錯誤粘貼到問題而不是鏈接? –

+1

你是否曾用實際數字替換'nonsym(i)'中的'i'?您是否嘗試打印出文件名並檢查具有該名稱的文件是否真的存在? – hgazibara

回答

1

不使用filename = nonsym1-2-3 -...,將步驟文件命名爲整數1.stp,2.stp,3.stp,然後使用%str(i)將整數轉換爲字符串值。 ... 並使用下面的代碼:

for i in range (1,10): 

    step = mdb.openStep(
     'C:/Users/12345678/Documents/Inventor/Aortic Dissection/%s.stp' %str(i), scaleFromFile=OFF) 

要獲得的ODB文件等量,修改工作代碼行similiar作爲此代碼。

+0

只使用'%i',你甚至不需要'str()' – agentp