2016-08-01 1 views
0

私はAbaqusでいくつかの関数を実行するためにPythonスクリプトを使用しています。さて、いくつかの繰り返しを実行した後、Abaqusはエラーのためにスクリプトを終了しています。Pythonでループを続行するためのエラーメッセージを無視します。

Pythonでは、エラーを回避して他の繰り返しを続けることは可能ですか?

エラーメッセージが

#* The extrude direction must be approximately orthogonal 
#* to the plane containing the edges being extruded. 

エラーが繰り返しのいくつかのために出てくるですが、私はエラーを無視して、このようなエラーが発生するたびにループを継続するための方法を探しています。

forループは指定通りです。

for i in xrange(0,960): 
    p = mdb.models['Model-1'].parts['Part-1'] 
    c = p.cells 
    pickedCells = c.getSequenceFromMask(mask=('[#1 ]',),) 
    e, d1 = p.edges, p.datums 
    pickedEdges =(e[i],) 
    p.PartitionCellByExtrudeEdge(line=d1[3], cells=pickedCells, edges=pickedEdges, 
    sense=REVERSE) 

これは実行可能ですか?ありがとう!

+1

いいえ、試してみてください。 –

+1

'ERROR NAME以外のコードを試す ' –

答えて

3

一般的にそれらを処理せずにエラーまたは例外を抑制するための悪い習慣ですが、これは簡単に次のように行うことができます。

try: 
    # block raising an exception 
except: 
    pass # doing nothing on exception 

これは明らかに、このようなループとして、任意の他の制御文で使用することができます:

for i in xrange(0,960): 
    try: 
     ... run your code 
    except: 
     pass 
関連する問題