gpt4 book ai didi

python - 从字符串列表中删除整数

转载 作者:太空宇宙 更新时间:2023-11-03 12:46:16 25 4
gpt4 key购买 nike

我有一个字符串列表列表,我想从中删除整数

[[[u'HH', u'AH0', u'L', u'OW1'], [u'HH', u'EH0', u'L', u'OW1']]]

上面的列表应该返回

[[[u'HH', u'AH', u'L', u'OW'], [u'HH', u'EH', u'L', u'OW']]]

我尝试过使用过滤器

filter(lambda i: not str.isdigit(i), phoneseqList[0])

但这似乎不起作用

最佳答案

对于任意嵌套的字符串列表,这是一个递归解决方案,它将从所有字符串中删除任何数字

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())

例子

>>> 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']]]

编辑
要为每个字符串添加扩展名,您可以采用相同的方法

def add_ext(i, ext):
if isinstance(i, list):
return [add_ext(j, ext) for j in i]
else:
return i + ext

所以你可以说

>>> add_ext(l, '.jpeg')

关于python - 从字符串列表中删除整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34513967/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com