首页 > 编程语言 >【Python】一键提取inp文件结构的脚本

【Python】一键提取inp文件结构的脚本

时间:2023-07-31 16:22:06浏览次数:45  
标签:Elset Sum12 name Python inp 一键 elset Ori Table


inp=input("输入文件路径:")
# print(type(inp))
ex_txt=inp+'-Struct.inp'
inp=inp+'.inp'

import re
f2= open(ex_txt, 'w')
with open(inp, 'r',encoding="utf-8") as f1:
    row_num=0    
    for i in f1:
        if i.startswith('*'):
            f2.write(i)
        row_num=row_num+1  #进入下一行
f2.close()

print('输出文件--'+ex_txt)

Example

img

输出:

*Heading
** Job name: SMLXJ2_20230731 Model name: SMLXJ2-ALLELEM-20230724
** Generated by: Abaqus/CAE 2020
*Preprint, echo=NO, model=NO, history=NO, contact=NO
**
** PARTS
**
*Part, name=LXJ
*Node
*Element, type=SC8R
*Element, type=SC6R
*Element, type=C3D4
*Element, type=C3D8R
*Element, type=C3D5
*Elset, elset=SHANG_12LAYER_3DMESH, generate
*Elset, elset=XIA-12LAYER-3DMESH, generate
*Elset, elset=GENG-3DMESH
*Elset, elset=CFRP-LUNGUWAICE-3DMESH, generate
*Elset, elset=LUNGU-TIHEJIN-3DMESH, generate
*Elset, elset=MIDTET3DMESH, generate
*Elset, elset=LUNGU-TET-3DMESH, generate
*Elset, elset=LunGUBiaoCeng-1-22, generate
*Elset, elset=LunGUBiaoCeng-23-44, generate
*Elset, elset=LunGUBiaoCeng-45-66, generate
*Elset, elset=Xia-GengBu
*Elset, elset=Shang-GengBu, generate
*Elset, elset=Shang-1-6-BladeBiaoCe
*Elset, elset=Shang-7-12-BladeBiaoCe
*Elset, elset=Xia-1-6-BladeBiaoCe
*Elset, elset=Xia-7-12-BladeBiaoCe
*Elset, elset=_LunGuWaiCe_S1, internal, generate
*Surface, type=ELEMENT, name=LunGuWaiCe
*Elset, elset=_Xia-surf_S1, internal
*Surface, type=ELEMENT, name=Xia-surf
*Elset, elset=_Xia-surf-2_S1, internal
*Surface, type=ELEMENT, name=Xia-surf-2
*Elset, elset=_Shang-surf_S1, internal
*Surface, type=ELEMENT, name=Shang-surf
*Elset, elset=_Shang-surf-2_S1, internal
*Surface, type=ELEMENT, name=Shang-surf-2
*Distribution, name=Ori-2-DiscOrient, location=ELEMENT, Table=Ori-2-DiscOrient_Table
** Description: Distribution generated from Discrete Orientation
*Distribution, name=Ori-3-DiscOrient, location=ELEMENT, Table=Ori-3-DiscOrient_Table
** Description: Distribution generated from Discrete Orientation
*Distribution, name=Ori-4-DiscOrient, location=ELEMENT, Table=Ori-4-DiscOrient_Table
** Description: Distribution generated from Discrete Orientation
*Distribution, name=Ori-5-DiscOrient, location=ELEMENT, Table=Ori-5-DiscOrient_Table
** Description: Distribution generated from Discrete Orientation
*Distribution, name=Ori-6-DiscOrient, location=ELEMENT, Table=Ori-6-DiscOrient_Table
** Description: Distribution generated from Discrete Orientation
*Distribution, name=Ori-7-DiscOrient, location=ELEMENT, Table=Ori-7-DiscOrient_Table
** Description: Distribution generated from Discrete Orientation
*Distribution, name=Ori-8-DiscOrient, location=ELEMENT, Table=Ori-8-DiscOrient_Table
** Description: Distribution generated from Discrete Orientation
*Orientation, name=Ori-3, system=RECTANGULAR
** Region: (BladeBiaoMian_Shang_7-12_Sum12-1: Generated From Layup)
*Elset, elset=BladeBiaoMian_Shang_7-12_Sum12-1
** Section: BladeBiaoMian_Shang_7-12_Sum12-1
*Shell Section, elset=BladeBiaoMian_Shang_7-12_Sum12-1, composite, orientation=Ori-3, stack direction=3, layup=BladeBiaoMian_Shang_7-12_Sum12
*Orientation, name=Ori-2, system=RECTANGULAR
** Region: (BladeBiaoMian_Shang_1-6_Sum12-1: Generated From Layup)
*Elset, elset=BladeBiaoMian_Shang_1-6_Sum12-1
** Section: BladeBiaoMian_Shang_1-6_Sum12-1
*Shell Section, elset=BladeBiaoMian_Shang_1-6_Sum12-1, composite, orientation=Ori-2, stack direction=3, layup=BladeBiaoMian_Shang_1-6_Sum12
*Orientation, name=Ori-5, system=RECTANGULAR
** Region: (BladeBiaoMian_Xia_7-12_Sum12-1: Generated From Layup)
*Elset, elset=BladeBiaoMian_Xia_7-12_Sum12-1
** Section: BladeBiaoMian_Xia_7-12_Sum12-1
*Shell Section, elset=BladeBiaoMian_Xia_7-12_Sum12-1, composite, orientation=Ori-5, stack direction=3, layup=BladeBiaoMian_Xia_7-12_Sum12
*Orientation, name=Ori-4, system=RECTANGULAR
** Region: (BladeBiaoMian_Xia_1-6_Sum12-1: Generated From Layup)
*Elset, elset=BladeBiaoMian_Xia_1-6_Sum12-1
** Section: BladeBiaoMian_Xia_1-6_Sum12-1
*Shell Section, elset=BladeBiaoMian_Xia_1-6_Sum12-1, composite, orientation=Ori-4, stack direction=3, layup=BladeBiaoMian_Xia_1-6_Sum12
*Orientation, name=Ori-1
** Section: Section-2
*Solid Section, elset=MIDTET3DMESH, orientation=Ori-1, material=ANI
*Orientation, name=Ori-8, system=RECTANGULAR
** Region: (LunguBiaoceng_45-66_Sum66-1: Generated From Layup)
*Elset, elset=LunguBiaoceng_45-66_Sum66-1, generate
** Section: LunguBiaoceng_45-66_Sum66-1
*Shell Section, elset=LunguBiaoceng_45-66_Sum66-1, composite, orientation=Ori-8, stack direction=3, layup=LunguBiaoceng_45-66_Sum66
*Orientation, name=Ori-7, system=RECTANGULAR
** Region: (LunguBiaoceng_23-44_Sum66-1: Generated From Layup)
*Elset, elset=LunguBiaoceng_23-44_Sum66-1, generate
** Section: LunguBiaoceng_23-44_Sum66-1
*Shell Section, elset=LunguBiaoceng_23-44_Sum66-1, composite, orientation=Ori-7, stack direction=3, layup=LunguBiaoceng_23-44_Sum66
*Orientation, name=Ori-6, system=RECTANGULAR
** Region: (LunguBiaoceng_1-22_Sum66-1: Generated From Layup)
*Elset, elset=LunguBiaoceng_1-22_Sum66-1, generate
** Section: LunguBiaoceng_1-22_Sum66-1
*Shell Section, elset=LunguBiaoceng_1-22_Sum66-1, composite, orientation=Ori-6, stack direction=3, layup=LunguBiaoceng_1-22_Sum66
** Section: LunGu-Ti
*Solid Section, elset=LUNGU-TIHEJIN-3DMESH, material=TC4
** Section: LunGu-Ti
*Solid Section, elset=LUNGU-TET-3DMESH, material=TC4
*End Part
**  
**
** ASSEMBLY
**
*Assembly, name=Assembly
**  
*Instance, name=LXJ-1, part=LXJ
*End Instance
**  
*Nset, nset=Set-fix, instance=LXJ-1
*End Assembly
*Distribution Table, name=Ori-2-DiscOrient_Table
*Distribution Table, name=Ori-3-DiscOrient_Table
*Distribution Table, name=Ori-4-DiscOrient_Table
*Distribution Table, name=Ori-5-DiscOrient_Table
*Distribution Table, name=Ori-6-DiscOrient_Table
*Distribution Table, name=Ori-7-DiscOrient_Table
*Distribution Table, name=Ori-8-DiscOrient_Table
** 
** MATERIALS
** 
*Material, name=ANI
*Elastic, type=ANISOTROPIC
** High modulus material M40
*Material, name=M40
*Density
*Elastic, type=LAMINA
*Material, name=T700
*Density
*Elastic, type=LAMINA
** TC4 titanium alloy
*Material, name=TC4
*Density
*Elastic
** ----------------------------------------------------------------
** 
** STEP: NatrualFrequencyExtractStep
** 
*Step, name=NatrualFrequencyExtractStep, nlgeom=NO, perturbation
*Frequency, eigensolver=Lanczos, sim, acoustic coupling=on, normalization=mass
** 
** BOUNDARY CONDITIONS
** 
** Name: BC-1 Type: Symmetry/Antisymmetry/Encastre
*Boundary
** 
** OUTPUT REQUESTS
** 
*Restart, write, frequency=0
** 
** FIELD OUTPUT: Fre-composite
** 
*Output, field
*Element Output, elset=LXJ-1.BladeBiaoMian_Shang_1-6_Sum12-1, directions=YES
** 
** FIELD OUTPUT: F-Output-4
** 
*Element Output, elset=LXJ-1.BladeBiaoMian_Shang_7-12_Sum12-1, directions=YES
** 
** FIELD OUTPUT: F-Output-5
** 
*Element Output, elset=LXJ-1.BladeBiaoMian_Xia_1-6_Sum12-1, directions=YES
** 
** FIELD OUTPUT: F-Output-6
** 
*Element Output, elset=LXJ-1.BladeBiaoMian_Xia_7-12_Sum12-1, directions=YES
** 
** FIELD OUTPUT: F-Output-7
** 
*Element Output, elset=LXJ-1.LunguBiaoceng_1-22_Sum66-1, directions=YES
*Element Output, elset=LXJ-1.LunguBiaoceng_1-22_Sum66-1, directions=YES
** 
** FIELD OUTPUT: F-Output-8
** 
*Element Output, elset=LXJ-1.LunguBiaoceng_23-44_Sum66-1, directions=YES
*Element Output, elset=LXJ-1.LunguBiaoceng_23-44_Sum66-1, directions=YES
** 
** FIELD OUTPUT: F-Output-9
** 
*Element Output, elset=LXJ-1.LunguBiaoceng_45-66_Sum66-1, directions=YES
*Element Output, elset=LXJ-1.LunguBiaoceng_45-66_Sum66-1, directions=YES
** 
** FIELD OUTPUT: F-Output-2
** 
*Output, field, variable=PRESELECT
*End Step

标签:Elset,Sum12,name,Python,inp,一键,elset,Ori,Table
From: https://www.cnblogs.com/aksoam/p/17593757.html

相关文章

  • Python 导入function和导入moudle的区别
    以pprint为例导入moudleimportpprint同比C#创建对象,可以通过moudle名访问其中定义的变量、函数、类是长期过程会将moudle定义加载到内存中,整个程序执行过程中均可使用访问方法moudleName.functionNamepprint.pprint(data)导入functionfrompprintimportpprint......
  • python 比较两个excel A有b没有
    importpandasaspd#读取第一个Excel文件df1=pd.read_excel('excel_file1.xlsx')#读取第二个Excel文件df2=pd.read_excel('excel_file2.xlsx')#找出在df1中存在但不在df2中的行missing_rows=df1[~df1['列名'].isin(df2['列名'])]#保存缺失的数据到新的E......
  • Python去除文本中的NUL(0x00)字符
    问题描述在python中将文本数据存储到PostgreSQL数据库中报以下错误ValueError:AstringliteralcannotcontainNUL(0x00)characters.原因PostgreSQL不支持在文本字段中存储NULL(0x00)字符(这与支持文本中带有NULL值的数据库显然不同)。如果需要存储NULL字符,则可以使用byt......
  • 秋叶整合包如何安装Python包
    前几天写了一篇《手把手教你在本机安装StableDiffusion秋叶整合包》的文章,有同学运行时遇到缺少PythonModule的问题,帮助他处理了一下,今天把这个经验分享给大家,希望能帮助到更多的同学。有时候启动某些插件的时候会出现ModuleNotFoundError的提示,类似下图这样:这时候就需要......
  • python学习_元组
    一、什么是元组?元组也是python内置的数据结构,是一个不可变的序列,他也可以存放不同数据类型的元素不可变序列有:就是不可以改变的序列,没有增、删、改的操作,如元组、字符串就是不可变序列可变序列:可以对序列进行增、删、改操作,对象地址不发生改变,如列表、字典等'''不可变序列与......
  • python Pycharm出现“can't find '__main__' module”解决方案
    是配置没配对,因为在配置时没有选择.py文件,而只选择了工程名。因此选择EditConfigurations。选择EditConfigurations后,查看Scriptpath只选择了工程名innerfuns,而这里应该要选择工程名里面的.py文件(main函数,如果没有,选择你要执行的.py文件)。最终可运行成功......
  • Python第一天
    1、变量名-字母-下划线-数字注:不能是关键字、不能数字开头、不要和内置的东西重复补充:变量名尽量写的有意义,对变量名所指向的东西尽量看名字可识别。技巧:变量名可以用单词,另外用下划线进行断句,已表示清楚(还有可以用首字母大写进行断句,python用下划线比较清晰) 2、字符串1......
  • mobaxterm python
    实现MobaxtermPython的步骤1.下载和安装Mobaxterm首先,你需要下载并安装Mobaxterm,它是一个功能强大的终端仿真器和X服务器,可在Windows上运行。你可以在Mobaxterm的官方网站(2.打开Mobaxterm安装完成后,打开Mobaxterm。你将看到一个类似于命令行的界面,其中包含一个终端窗口和一......
  • mmap python
    mmap在python中的使用简介在Python中,我们可以使用mmap模块来实现内存映射。内存映射是一种将文件映射到内存的方法,使得我们可以像操作内存一样操作文件。这在处理大型文件时非常有用,可以提高文件的读写速度。整体流程下面是实现mmap的整体流程,我们将分为以下几个步骤:步骤......
  • Python工具箱系列(三十九)
    使用zlib对数据进行压缩现实世界中,大量存在着对数据压缩的需求。为此,python内置了zlib压缩库,可以方便的对任意对象进行压缩。下述代码演示了对字符串进行压缩:importzlib#压缩一段中文originstr='神龟虽寿,犹有竟时;腾蛇乘雾,终为土灰。老骥伏枥,志在千里;烈士暮年,壮心不已。......