[问题] 字串处理 - 简化程式码

楼主: zha0 (这个帐号是挂网用)   2014-02-24 11:50:08
还是一样又用 C 的方式在写程式了 Q_q
输入的资料
print "\t# {IP} : {PORT} ; {COMMENT}"
print "\tIP:Port1,Port2.....;Comment"
print "\tIP1-IP2:Port1;Comment"
print "\tIP/24:Port1\n"
print "\tIP;Comment"
处理的程式片段
items = '127.0.0.1:443;SSL'
ip = ''
port = ''
ipp = ''
comm = ''
if items.find(';'):
ipp, comm = items.split(';')
if ipp == '':
ipp = options.insert
if ipp.find(':'):
ip, port = ipp.split(':')
if ip == '':
ip = options.insert
print ip, port, comm
请问如何将上面的程式码, 写的好看一点, 感觉一直 if 判断, 好像没 python 的味道 ~"~
split 可以给了个字符 : ; 然后他就帮你自己切好吗 ? 好像先从 : 切会比从 ; 切好 ?___?
作者: uranusjr (←這人是超級笨蛋)   2014-02-24 12:14:00
Regular expression我通常不会推荐 re (大多数状况是 overkill), 不过你这个状况根本就是 regex 的经典范例 :p
楼主: zha0 (这个帐号是挂网用)   2014-02-24 12:16:00
忘了有 RE XDD
作者: WanCW (旺小王)   2014-02-24 12:16:00
if find(_): split(_) 可以换成 .partition(_)[::2]if ipp == '': ipp = _ 可以换成 ipp = ipp or _

Links booklink

Contact Us: admin [ a t ] ucptt.com