我有一个包含一些英文文本的列表,而另一个在Hindi中。我想删除用英语写的列表中的所有元素。怎么实现呢?
示例:如何从下面的列表hello
中删除L
?
L = ['मैसेज','खेलना','दारा','hello','मुद्रण']
for i in range(len(L)):
print L[i]
预期产出:
मैसेज
खेलना
दारा
मुद्रण
答案 0 :(得分:7)
您可以使用isalpha()
功能
l = ['मैसेज', 'खेलना', 'दारा', 'hello', 'मुद्रण']
for word in l:
if not word.isalpha():
print word
会给你结果:
मैसेज
खेलना
दारा
मुद्रण
答案 1 :(得分:2)
简单列表理解如何:
>>> import re
>>> i = ['मैसेज','खेलना','दारा','hello','मुद्रण']
>>> [w for w in i if not re.match(r'[A-Z]+', w, re.I)]
['मैसेज', 'खेलना', 'दारा', 'मुद्रण']
答案 2 :(得分:1)
您可以将filter
与正则表达式match
一起使用:
import re
list(filter(lambda w: not re.match(r'[a-zA-Z]+', w), ['मैसेज','खेलना','दारा','hello','मुद्रण']))
答案 3 :(得分:0)
您可以使用Python的正则表达式模块。
import re
l=['मैसेज','खेलना','दारा','hello','मुद्रण']
for string in l:
if not re.search(r'[a-zA-Z]', string):
print(string)