作者blackspace98 (~我爱夏天~)
看板Python
标题[问题] 字串撷取问题
时间Wed Jan 9 20:08:06 2013
test.txt 档案内容如下
--------------
1-10,4:6
其中1-10,4:6也有可能1-10 或 1-10,4 或 1-10,4:6:8 等等的情况产生
我希望可以由这个test.txt控制档,控制我回圈的执行
然後我写了下面的方法,但是在上述的情况产生下(1-10 或 1-10,4 或 1-10,4:6:8 等)
我就不知道该怎麽下手了
, :都是我自行设定的
我只想要
1-10 回圈1跑到10
1-10,4:5 回圈1跑到10 ,遇到4.5不跑,6接下去跑
1-10,4 回圈1跑到10 ,遇到4不跑,5接下去跑
id=''
id_str=''
id_end=''
tmp=''
f = open('test.txt')
for i,str in enumerate(f, 1):
if i == 2:
id=str.strip()
id_str=id.split('-')[0]
id_end=id.split('-')[1].split(',')[0]
#print(id)
#print(id_str) #印出1
#print(id_end) #印出10
f.close()
for i in range(int(id_str),int(id_end)+1):
if i==4: #模拟类似这样的效果
continue
print (i)
不好意思,再次麻烦各位了,谢谢~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 42.71.25.164
1F:→ uranusjr:看起来不错啊, id.split('-')[2].split(':') 就有後面了 01/09 21:07
2F:→ uranusjr:都快写好了不懂你的问题在哪 01/09 21:07
我的问题是想要模拟,遇到4:6 在回圈就会遇到4和6就跳出
3F:→ ck574b027:逗号後面是什麽,不像step。 01/10 11:58
是我自己设定的分号;
4F:→ ck574b027:用len检查split(','),有东西的话拿来split(':'),done. 01/10 12:06
我会再试看看,看看要怎麽把它抓出来,放到回圈中
5F:→ ck574b027:话说行号二的i应该为1不是吗? 01/10 12:08
1-10吗? 是1没错
※ 编辑: blackspace98 来自: 42.75.129.11 (01/10 23:38)