我在 python 中有一个列表,它是由许多函数生成的。它是这样产生的:
['01', '1.0', '[0.2]']
我想在生成后删除所有不必要的字符。
理想输出:
['01', '1.0', '0.2']
我基本上需要从列表的最后一个字符串中删除 [ 和 ]。
更新:
list_test = ['01', '1.0', '[0.2]']
[i.strip('[]') if type(i) == str else str(i) for i in list_test]
print(list_test)
这不起作用,因为有和没有产生相同的结果:
['01', '1.0', '[0.2]']
要求的结果是:
['01', '1.0', '0.2']
提供的解决方案:
l = ['01', '1.0', '[0.2]']
[i.strip('[0.2]') if type(i) == str else str(i) for i in l]
print(l)
输出:
['01', '1.0', '0.2']
Process finished with exit code 0
原文由 JAM 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果您只需要删除字符串周围的可选
[
和]
,这个单行代码应该可以解决问题:以你的例子
它的作用:它遍历列表的所有字符串并删除任何
[
和]
如果它们位于字符串的开头或结尾。它还会使]0.2[
变成0.2
。更新:
在这种情况下,您的输入数组中有一个 int,这个衬垫应该可以解决问题:
以 int 为例:
它的作用是
[
和]