码迷,mamicode.com
首页 > 编程语言 > 详细

python提取字符串中数字

时间:2015-08-08 00:05:00      阅读:143      评论:0      收藏:0      [点我收藏+]

标签:python   字符串   数字   

题目:【这是一个复杂问题的简化】如下是一个字符串列表,提取字符串中第二个数字,并判断是否大于1000,如果是,从列表中删除这一行。

1000\t1002\n

.....【省略】....

代码:

<pre name="code" class="python">oldStr = "1000\t1002\n"
newStr = oldStr
#匹配目标数字左侧字符串
t=newStr.index("\t")
newStr = newStr.lstrip(newStr[0:t])
newStr = newStr.lstrip("\t")
newStr = newStr.rstrip("\n")
if int(newStr)>1000:
	print 'ok'
else:
	print 'sorry'
#结果:ok

接下来可继续后续删除操作。

易错点1:对字符串进行strip()后,如果不赋值,字符串内容保持不变。

>>> newStr.lstrip("\t")
'1002\n'
>>> newStr.rstrip("\n")
'\t1002'

再举一例:

>>> ss="124"
>>> ss[0]
'1'
>>> ss.lstrip(ss[0])
'24'
>>> ss[0]				#ss[0]保持不变
'1'
>>> ss=ss.lstrip(ss[0])		# 赋值之后ss获取新值
>>> ss
'24'
>>> ss[0]				#ss[0]随之改变
'2'

易错点2:如果newStr[0:t]改为newStr[0:t+1],则无法得到1002,而是002.原因待查。


版权声明:欢迎转载,转载请注明出处http://blog.csdn.net/ztf312/

python提取字符串中数字

标签:python   字符串   数字   

原文地址:http://blog.csdn.net/ztf312/article/details/47345289

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!