找回密码
 注册
Simdroid-非首页
查看: 186|回复: 3

[二次开发] 实现在一个INP文件中添加程序(附代码)

[复制链接]
发表于 2010-1-22 17:04:42 | 显示全部楼层 |阅读模式 来自 北京海淀
在论坛中提过这个问题,今天调了程序,为了实现一个已有的inp文件的中间添加一些内容,但是二次开发后程序的问题是新的inp文件的内容并没有变,代码如下:
    f1 = open('Job-1.inp','r')
    f2 = open('MP250x125.inp','w')
    while 1:
        text=f1.readline()
        if text=='extruded length=20., cross section=100, frequency=100':
            text1=text+'\n*STEADYSTATEDETECTION, ELSET=workpiece-1.Whole-part, SAMPLING=PLANEBYPLANE\n'
            text2=text1+'0,0,-1,0,0,-10\n'
            text3=text2+'*STEADYSTATECRITERIA\n'
            text4=text3+'SSSPRD, 0.15, 0,0,0\n'
            text=text4+'SSFORC, 0.15, 0,0,0, _PickedSet8, 0,1,0\n'
            continue
        elif text=='':
            break
        f2.write(text)
    f1.close()
    f2.close()
说白了添加这么一段语句,估计算法出了问题,请教Python的高手!
 楼主| 发表于 2010-1-23 20:29:33 | 显示全部楼层 来自 北京海淀
Simdroid开发平台
解决
'extruded length=20., cross section=100, frequency=100'加上一个\n就行,
下面一行去掉第一个\n。

评分

1

查看全部评分

回复 不支持

使用道具 举报

发表于 2010-1-24 01:01:48 | 显示全部楼层 来自 江苏苏州
这个方法还是不错的,掌握用python处理INP文件很有用处。
回复 不支持

使用道具 举报

 楼主| 发表于 2010-1-27 19:13:09 | 显示全部楼层 来自 北京海淀
需要说明一下程序里continue是需要删去的,用continue可以推知是当遇到这一段程序的时候,不执行,然后去执行至用空格为止,逻辑就错了,希望原谅。
回复 不支持

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-5-24 00:21 , Processed in 0.044279 second(s), 17 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表