首页 > 解决方案 > 在 for 循环后重置所有变量

问题描述

我会有一个如下所示的 for 循环。运行一次后,我想在 i 中的每个增量之后重置/删除所有外部变量定义(i)以及循环内的变量(k,p)。我该怎么做?我正在另一个程序 abaqus 的 python 解释器(版本 2.7.3)中执行此代码(我不知道这是否会影响代码)。

for i in range(10,11):

    mdb.Model(name='model-{}'.format(i), modelType=STANDARD_EXPLICIT)
    session.viewports['Viewport: 1'].setValues(displayedObject=None)
    session.viewports['Viewport: 1'].partDisplay.setValues(mesh=OFF)
    session.viewports['Viewport: 1'].partDisplay.meshOptions.setValues(
        meshTechnique=OFF)
    session.viewports['Viewport: 1'].partDisplay.geometryOptions.setValues(
        referenceRepresentation=ON)
    step = mdb.openStep('C:/temp/Circular_knit - 2, 3, {}.STEP'.format(i), 
    scaleFromFile=OFF)
    mdb.models['model-{}'.format(i)].PartFromGeometryFile(name='Circular_knit - 
    2, 3, {}'.format(i),
        geometryFile=step, combine=False, retainBoundary=True,
        mergeSolidRegions=True, dimensionality=THREE_D, type=DEFORMABLE_BODY)
    p = mdb.models['model-{}'.format(i)].parts['Circular_knit - 2, 3, 
    {}'.format(i)]
    session.viewports['Viewport: 1'].setValues(displayedObject=p)
    session.viewports['Viewport: 1'].view.fitView()
    p = mdb.models['model-{}'.format(i)].parts['Circular_knit - 2, 3, 
    {}'.format(i)]
    all_edges = []
    for j in p.edges:
        all_edges.append(j)
    k=tuple(all_edges)
    p.WireFromEdge(edgeList=(k))

标签: pythonfor-loopvariables

解决方案


使用类对象,您的变量只会是“本地”的,请参见:类对象或您使用内置函数:

del ...


推荐阅读