用Python代碼獲得ODB文件中某些容器中的key(比如step的名字)

有時(shí)候在利用Python進(jìn)行前后處理的時(shí)候,訪問(wèn)容器中的某一個(gè)對(duì)象時(shí),需要這個(gè)對(duì)象的名字,也就是這個(gè)對(duì)象的key,但是如果對(duì)這個(gè)ODB文件不是很了解,或者時(shí)間長(zhǎng)了忘記了,那么可以通過(guò)如下方式來(lái)獲得容器中的所有key。比如:

假設(shè)容器名字為:repo,那么獲得這個(gè)容器中的所有元素名字的方法為:repo.keys()

一段示例代碼如下:

#-*-coding:UTF-8 -*-
# Author: lizhiyong4216@163.com
# Date: 2018.01.27

from abaqus import *
import visualization

def GetKeysInODBFile(odb_file):
	myOdb = visualization.openOdb(odb_file)
	# 一個(gè)容器往往都包含一個(gè)函數(shù)keys,能夠返回容器中所有的key
	# 對(duì)容器中包含的key及其數(shù)量不明確的時(shí)候可以利用這個(gè)函數(shù)打印出來(lái)
	step_name = myOdb.steps.keys()
	print(step_name)

	# step_name是一個(gè)列表,列表元素是每一個(gè)step的key
	# step_name[0]就是這個(gè)列表中的第一個(gè)step
	step = myOdb.steps[step_name[0]]

	# step.frames是這個(gè)step包含的所有的frame的列表,frames[-1]表示最后一個(gè)frame
	frame = step.frames[-1]

	# field_names表示fieldOutputs中含有的所有的變量的key
	field_names = frame.fieldOutputs.keys()
	print(field_names)

if __name__ == "__main__":
	odb_file = "CuttingAnalysis.odb"
	GetKeysInODBFile(odb_file)
登錄后免費(fèi)查看全文
立即登錄
App下載
技術(shù)鄰APP
工程師必備
  • 項(xiàng)目客服
  • 培訓(xùn)客服
  • 平臺(tái)客服

TOP

9
2