Python:使用循环命名变量

2024-06-25 05:42:13 发布

您现在位置:Python中文网/ 问答频道 /正文

对于我们的ansys软件,我想生成一个脚本来自动化某些事情。 当我记录我的行为时,我得到了以下信息

template1 = GetTemplate(
    TemplateName="Random Vibration",
    Solver="ANSYS")
system1 = GetSystem(Name="Modal (ANSYS)")
component1 = system1.GetComponent(Name="Engineering Data")
component2 = system1.GetComponent(Name="Geometry")
component3 = system1.GetComponent(Name="Model")
component4 = system1.GetComponent(Name="Solution")
componentTemplate1 = GetComponentTemplate(Name="SimulationSetupCellTemplate_StructuralRandomVibrationANSYS")
system2 = template1.CreateSystem(
    ComponentsToShare=[component1, component2, component3],
    DataTransferFrom=[Set(FromComponent=component4, TransferName=None, ToComponentTemplate=componentTemplate1)],
    Position="Right",
    RelativeTo=system1)

需要创建72个系统,所以我想用一个循环来代替手动复制粘贴这些。最好的方法是什么


Tags: name脚本软件记录事情ansyscomponent1system1
1条回答
网友
1楼 · 发布于 2024-06-25 05:42:13

我不确定我是否完全理解了您的问题,但从您的代码命名来看,我认为这是您想要的:

systems1 = []
systems2 = []
templates = []
components1 = []
components2 = []
components3 = []
components4 = []
for i in range(72):    
    template = GetTemplate(
        TemplateName="Random Vibration",
        Solver="ANSYS")
    system = GetSystem(Name="Modal (ANSYS)")
    component = system.GetComponent(Name="Engineering Data")
    component1 = system.GetComponent(Name="Geometry")
    component2 = system.GetComponent(Name="Model")
    component3 = system.GetComponent(Name="Solution")
    componentTemplate = GetComponentTemplate(Name="SimulationSetupCellTemplate_StructuralRandomVibrationANSYS")
    system = template.CreateSystem(
    ComponentsToShare=[component1, component2, component3],
    DataTransferFrom=[Set(FromComponent=component4, TransferName=None, ToComponentTemplate=componentTemplate)],
    Position="Right",
    RelativeTo=system)
    templates.append(template)
    ... rest of appends...

附件是如果你以后需要访问的话,我想你会这样做的。如果您确实需要将它们命名为system1、system2等,那么可以使用exec并在循环中构建字符串。在

相关问题 更多 >