Python|提取仅包含字母的字符串
有时,在使用Python列表时,我们可能会遇到一个问题,即我们只需要提取那些仅包含字母的字符串并丢弃那些包含数字的字符串。这在日常编程和网络开发领域有应用。让我们讨论可以执行此任务的某些方式。
方法 #1:使用isalpha()
+ 列表理解
上述功能的组合可用于执行此任务。在此,我们使用 isalpha() 提取仅是字母的字符串,并使用列表推导编译整个逻辑。
# Python3 code to demonstrate working of
# Extract Alphabet only Strings
# Using isalpha() + list comprehension
# initializing list
test_list = ['gfg', 'is23', 'best', 'for2', 'geeks']
# printing original list
print("The original list is : " + str(test_list))
# Extract Alphabet only Strings
# Using isalpha() + list comprehension
res = [sub for sub in test_list if sub.isalpha()]
# printing result
print("Strings after filtering : " + str(res))
输出 :
The original list is : ['gfg', 'is23', 'best', 'for2', 'geeks']
Strings after filtering : ['gfg', 'best', 'geeks']
方法 #2:使用filter()
+ lambda
上述方法的组合可用于执行此任务。在此,我们使用 filter() 执行过滤,并使用 lambda 完成对所有字符串的扩展逻辑。
# Python3 code to demonstrate working of
# Extract Alphabet only Strings
# Using filter() + lambda
# initializing list
test_list = ['gfg', 'is23', 'best', 'for2', 'geeks']
# printing original list
print("The original list is : " + str(test_list))
# Extract Alphabet only Strings
# Using filter() + lambda
res = list(filter(lambda sub: sub.isalpha(), test_list))
# printing result
print("Strings after filtering : " + str(res))
输出 :
The original list is : ['gfg', 'is23', 'best', 'for2', 'geeks']
Strings after filtering : ['gfg', 'best', 'geeks']