在lambda表达式部分怎么样区别大小写
来源:12-6 filter
慕瓜1195623
2018-09-16
6回答
-
慕粉916768
2019-08-16
还是使用正则表达式比较好,适用的情况比较多。如果一个列表中包含有数字等情况:
import re list_u = ['a','B','c','F','e',1,3,10,'4'] pattern = '[A-Z]' #保留大写 r=filter(lambda x: re.match(pattern,str(x)), list_u) print(list(r))
如果要保留小写,修改匹配条件即可:pattern = '[a-z]'。可以根据不同条件来修改,比较灵活。
10 -
慕数据7346926
2019-01-15
#过滤大小写
strList = ['a','B','c','D','E']
re = filter(lambda x: x.islower(),strList)
print(list(re))10 -
Seven_柒柒
2018-10-12
import re
list_letter = ['a','A','d','s','D','c','F']
r = filter(lambda x: re.findall('[a-z]', x), list_letter)
其实,没必要使用三元表达式。filter会根据函数的返回值,自动判断是否保留。
例如 : re.findall('[a-z]', x)
第一个元素:‘a’-->rerurn 'a' --->不为空,即True
第二个元素:‘A’-->rerurn ' ' ---->为空,即False
112019-07-21 -
微分
2018-09-16
1. 筛选小写字母
list_x = ['A', 'a', 'B', 'c', 'f', 'g', 'H']
r = filter(lambda x: True if x >= 'a' else False, list_x)
print(list(r))
2. 筛选大写字母
list_x = ['A', 'a', 'B', 'c', 'f', 'g', 'H']
r = filter(lambda x: True if x < 'a' else False, list_x)
print(list(r))
10 -
慕粉3414773
2020-07-16
b_list = ['A','b','C','d','E','f']
z = list(filter(lambda x: x.isupper(),b_list))
print(z)
python 提供了一系列判断方法,isupper islower 之类的
00 -
慕的地6863477
2019-03-28
x_list=['a','A','b','c','D','E']
# 筛选大小写,这个是筛选小写的,筛选大写,下面改成not in就好了
a="abcdefghigklmnopq"
r=filter(lambda x:True if x in a else False,x_list)
print(list(r))
00
相似问题