您好我有以下代码:
Z = [ [<Entity:0*7fasdas55c:type1101(1101,NGRID)id:-2600>, <Entity:0*5fafaef45c:type1101(1101,NGRID)id:-3665>]
, [<Entity:0*7fasdas55c:type1101(1101,NGRID)id:-5600>, <Entity:0*5fafaef45c:type1101(1101,NGRID)id:-545465>] ]
edge1= ansa.basecollectentity(constant.nastran, Z[0],'NODE')
print(edge1)
我的结果是
[<Entity:0*7fasdas55c:type1101(1101,NGRID)id:-2600>, <Entity:0*5fafaef45c:type1101(1101,NGRID)id:-3665>]
虽然代码是用ansa python编写的,但我的问题是General
我想编写一个代码,使其通过&#39; edge1&#39;并使用两个不同的名称打印id之后的数字:例如
Node1 = 2600
Node2 = 3665
请提前帮助我编写代码
答案 0 :(得分:1)
在ansa中说您有一个实体,例如:
nod=<Entity:0*7fasdas55c:type1101(1101,NGRID)id:-2600>
要打印ID,您可以使用:
Print(nod._id)
结果:
2600
您还可以使用._type
获取要处理的实体的类型
希望有帮助
答案 1 :(得分:0)
每个类使用__repr__()
特殊方法控制自己的可打印表示。
您正在查看的数字id:
可能位于实体,任何字段或内部数据结构中的任何位置,或者在显示时无处计算。它可能很容易成为id
属性,正如@ PM2Ring的评论所暗示的那样 - 但它可能不是。
因此,这是一个非常具体的问题 - 您需要检查实体是否有适当的字段或方法来获取ID。你还没有说出它是什么,所以这可能是什么。
或者它是关于处理repr()
值的一般性问题 - 这可能不是你想要做的,真的。
但如果你真的想,那就是:
for count, item in enumerate(edge1):
id = repr(item).split(':')[-1].rstrip('>')
print "Node" + str(count), id