您的位置:首页 > 编程语言 > Python开发

python代码实现简易滤除数字方法

2017-02-23 22:14 666 查看
如果想从一个含有数字,汉字,字母的列表中滤除仅含有数字的字符,当然可以采取正则表达式来完成,但是有点太麻烦了,因此可以采用一个比较巧妙的方式:

1、正则表达式解决

import re

L = [u'小明', 'xiaohong', '12', 'adf12', '14']

for i in range(len(L)):
if re.findall(r'^[^\d]\w+',L[i]):
print re.findall(r'^\w+$',L[i])[0]

elif isinstance(L[i],unicode):
print L[i]


2、巧妙地避开正则表达式

L = [ 'xiaohong', '12', 'adf12', '14',u'晓明']

for x in L:
try:
int(x)
except:
print x


3、使用string内置方法

L = [ 'xiaohong', '12', 'adf12', '14',u'晓明']

#对于python3来说同样还可以使用string.isnumeric()方法
for x in L:
if not x.isdigit():
print x


以下分别是python2和python3中string的方法:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: