wulffer 发表于 2018-12-17 11:50:45

请教 python 如何读取 keyword 的行号

在abaqus CAE中通过关键字编辑,添加分析步的温度场:

    *temperature,input=aba_100.dat
在每一个分析步中都添加一行*temperature,关键字,对应的.dat文件依次为 aba_1.dat ~ aba_100.dat。
因涉及到的分析步较多,我想通过 python 脚本实现。但添加关键字后,abaqus.rpy中对应的代码为:
    mdb.models['800'].keywordBlock.insert(33, """*temperature, input=aba_100.dat""")
上述代码中 33 即 keyword 的行号,请问如何用 python 代码获取这一行号?
然后就可以通过分析步名称的关键字查找,在python中通过一个循环语句为每一个分析步添加一行 *temperature 关键字

a664900495@qq.c 发表于 2019-3-13 12:11:18

首先写个for循环读文本,然后判断关键词,输出行号。你懂正则的话可以用正则判断关键字,不懂的话用也可以用其他方法判断关键词,比如   ‘a’   in   ‘asdasd’ 这种

越野孤狼 发表于 2019-4-27 21:05:24

http://blog.sina.com.cn/s/blog_6465f2ed0102x7ae.html这个网页介绍的内容要改会对你有所帮助,我利用这个方式实现了inp文件的修改,但是我不知道如何删除某一行,如果你有更好的方式,我们可以交流一下,:D

wulffer 发表于 2019-5-6 17:25:29

经过仔细查看help文档,abaqus python 脚本操作关键字如下:
# mdb.models.keywordBlock.sieBlocks 实际上是一个list,存储了abaqus的所有关键字,每个关键字字段为一个list的一个字符串,可以通过python对该list操作,在cae界面运行python脚本,实现对keywords的修改。
页: [1]
查看完整版本: 请教 python 如何读取 keyword 的行号