Nep*_*mer 3 python regex string list
我有一个字符串列表列表,我想删除整数
[[[u'HH', u'AH0', u'L', u'OW1'], [u'HH', u'EH0', u'L', u'OW1']]]
Run Code Online (Sandbox Code Playgroud)
以上列表应该返回
[[[u'HH', u'AH', u'L', u'OW'], [u'HH', u'EH', u'L', u'OW']]]
Run Code Online (Sandbox Code Playgroud)
我试过使用过滤器
filter(lambda i: not str.isdigit(i), phoneseqList[0])
Run Code Online (Sandbox Code Playgroud)
但这似乎不起作用
对于任意嵌套的字符串列表,这里是一个递归解决方案,将删除所有字符串中的任何数字
def remove_digits(i):
if isinstance(i, list):
return [remove_digits(j) for j in i]
else:
return ''.join(j for j in i if not j.isdigit())
Run Code Online (Sandbox Code Playgroud)
例
>>> l = [[[u'HH', u'AH0', u'L', u'OW1'], [u'HH', u'EH0', u'L', u'OW1']]]
>>> remove_digits(l)
[[['HH', 'AH', 'L', 'OW'], ['HH', 'EH', 'L', 'OW']]]
Run Code Online (Sandbox Code Playgroud)
编辑
要为每个字符串添加扩展名,您可以执行相同的操作
def add_ext(i, ext):
if isinstance(i, list):
return [add_ext(j, ext) for j in i]
else:
return i + ext
Run Code Online (Sandbox Code Playgroud)
所以你可以说
>>> add_ext(l, '.jpeg')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
91 次 |
| 最近记录: |