声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

12
返回列表 发新帖
楼主: leeking30

[Python] 关于Python的循环和文件自动命名(dspace中的运用)

[复制链接]
发表于 2010-12-1 08:12 | 显示全部楼层
可以简单的看一下python的入门书籍,很简单的.
上面的程序用for循环也好
  1. for delay in range(0,6,0.1):
  2.       for pre in range(0,1,0.01)
  3.         #use delay pre
  4.         #body

复制代码
就可以了,python已空格缩进作为间隔
回复 支持 反对
分享到:

使用道具 举报

发表于 2010-12-1 09:59 | 显示全部楼层
本帖最后由 wqsong 于 2010-12-1 10:02 编辑

回复 16 # smtmobly 的帖子

似乎,range函数不能用-1到1之间的浮点数作步长。。。
好像是step是整形,-1到1之间的浮点数都向0去整。。。步长就按0算了。。。
发表于 2010-12-1 15:11 | 显示全部楼层
回复 17 # wqsong 的帖子

哦!numpy里用xrange可以!不过你可以在整数的基础上乘以一个数。
for item in range(1,1000):
      delay=0.001*item
 楼主| 发表于 2010-12-8 18:30 | 显示全部楼层
本帖最后由 leeking30 于 2010-12-8 18:31 编辑

回复 12 # wqsong 的帖子

开始跑不通,看提示说indent错误 好像PYTHON没有smart indent功能(可能我自己没找见)  就手动调整了下
果然能跑动了, 非常感谢
自动储存出来的  文件 第一个为thre0delay0.mat (OK)  但是第二个是thre0delay1.0.mat 也就是说0.001*1000=1.0 不是 integer 虽然后期拿matlab也能搞定 总觉得有点不好看

再次感谢wqsong的帮助 还有smtmobly的回复

评分

1

查看全部评分

发表于 2010-12-8 19:41 | 显示全部楼层
回复 19 # leeking30 的帖子

客气了。。。
至于不是integer这问题也可以解决的,把浮点数强制转化为整型。
filename='thre'+str(int(10*thre))+'delay'+str(int(1000*delay))+'.mat'
这样就可以了。
拿你说那例子说:
  1. >>> print filename
  2. thre0delay1.mat
  3. >>> thre = 0.2
  4. >>> delay = 0.002
  5. >>> filename='thre'+str(int(10*thre))+'delay'+str(int(1000*delay))+'.mat'
  6. >>> print filename
  7. thre2delay2.mat
复制代码
filename.png

这样的话就不会出现thre2.0delay2.0.mat这样的形式了。。。

 楼主| 发表于 2010-12-9 00:23 | 显示全部楼层
回复 12 # wqsong 的帖子

最后要补充一点 原代码有点小错误
thre=0
delay=0  #这句要移动到下面
while thre<=6:
        delay=0                 #delay 要写在这里      
                while delay<=0.1:
                #do something
                filename='thre'+str(10*thre)+'delay'+str(1000*delay)+'.mat'
                SaveRefCapture('C:\\dspace\\beam_torsion_bending\\01072010\\TestThresholdBeam \                                    
                ingDamping\\ExBend800\\ExTorsion300\\'+filename)
                delay+=0.001
        thre+=0.1

通过做试验,学习了一些python的基础知识 有收获



点评

赞成: 5.0
赞成: 5
缩进都点问题,Python就看重缩进,所以给你编辑了一下,呵呵。欢迎常来。  发表于 2010-12-9 20:24
发表于 2011-8-25 11:48 | 显示全部楼层
请问哪里有DSPace下载?如果你那有此软件,能否给我传一份?我在学校学习。我QQ是258902093.
 楼主| 发表于 2011-9-1 23:30 | 显示全部楼层
回复 22 # luoyue 的帖子

dSPACE 是硬件 不是软件  
我这里说的是 dspace的 控制软件 叫controldesk 是买dspace时候附带的
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-5-17 06:39 , Processed in 0.073913 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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