【发布时间】:2021-02-02 17:36:03
【问题描述】:
我会有一个如下所示的 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))
【问题讨论】:
-
“非明确定义的变量”是什么意思?使用
p =和k =是显式定义一个变量。另外,“重置/删除”是什么意思?del p、del k和del i应该是您要查找的内容(尽管我不明白您为什么需要删除这些变量)。 -
Python 2.73 已经过时了一年多。尝试升级到最新版本的 Python。
-
请更新代码的缩进。 Python 对缩进非常敏感,python 程序员也是如此。
-
将代码放入函数中。
-
@quamrana :我很抱歉,并且仍在学习这个论坛的规则。使用四个空格编辑并添加了缩进。