Python 如何在命令中定义循环?

Python 如何在命令中定义循环?,python,abaqus,Python,Abaqus,我正在用python为ABAQUS软件编写代码,我需要在代码的一部分中编写以下代码 a1.InstanceFromBooleanMerge(name='agg', instances=(a1.instances['Part-1-1'], a1.instances['Part-2-1'], ), keepIntersections=ON, originalInstances=DELETE, domain=GEOMETRY) 在前面提到的代码中,部分的数量会有所不同,在运行代码之前

我正在用python为ABAQUS软件编写代码,我需要在代码的一部分中编写以下代码

a1.InstanceFromBooleanMerge(name='agg', instances=(a1.instances['Part-1-1'], 
   a1.instances['Part-2-1'], ), keepIntersections=ON, 
   originalInstances=DELETE, domain=GEOMETRY)
在前面提到的代码中,部分的数量会有所不同,在运行代码之前,我不知道我有多少部分

例如,如果我有3个部分,如何调整代码?在这种情况下,代码必须与以下代码相同:

a1.InstanceFromBooleanMerge(name='agg', instances=(a1.instances['Part-1-1'], 
    a1.instances['Part-2-1'], a1.instances['Part-3-1'],),                   
    keepIntersections=ON, originalInstances=DELETE, domain=GEOMETRY)

如您所见,这是一个命令,我不知道如何在命令中定义For loop之类的内容???

您可以使用列表理解在方法调用中建立列表:

a1.InstanceFromBooleanMerge(
    name='agg', 
    instances=tuple([a1.instances["Part-%s-1" % i] for i in range(1,4)]),                   
    keepIntersections=ON,
    originalInstances=DELETE,
    domain=GEOMETRY)
instances = tuple([a1.instances["Part-%s-1" % i] for i in range(1,4)])
a1.InstanceFromBooleanMerge(
    name='agg', 
    instances=instances,
    keepIntersections=ON,
    originalInstances=DELETE,
    domain=GEOMETRY)
其中4是得到的矩阵长度加1,例如range1,lenmatrix+1

另一种方法是在方法调用之外构建元组:

a1.InstanceFromBooleanMerge(
    name='agg', 
    instances=tuple([a1.instances["Part-%s-1" % i] for i in range(1,4)]),                   
    keepIntersections=ON,
    originalInstances=DELETE,
    domain=GEOMETRY)
instances = tuple([a1.instances["Part-%s-1" % i] for i in range(1,4)])
a1.InstanceFromBooleanMerge(
    name='agg', 
    instances=instances,
    keepIntersections=ON,
    originalInstances=DELETE,
    domain=GEOMETRY)

什么决定了零件的数量?代码的哪一部分?你是说字典里所有的键吗?如果顺序不重要,可以执行->instances=tuplea1.instances.values您可以在InstanceFromBooleanMerge之外创建实例的元组变量,然后将该变量作为实例传入argument@MYGz它是通过计算矩阵的长度来确定的。是a1.instances['Part-i-1']@MYGz你在哪里看到的?在上面的问题中,它说,例如a1.实例['Part-3-1']这些是字典的键。啊,我明白了,我以为你指的是键的构建。我修复了这个部分,谢谢你的帮助hint@Jakub:修复了字符串格式,你说得对,这样更好。还详细说明了如何在函数调用之外构建元组