如何用零替换python列表中的所有零?

2024-03-29 01:46:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要将newsplited中的零替换为零。基本上,我需要移除它们。没有进口怎么办?有人能帮忙吗?你知道吗

input_string = "01-result.xls,2-result.xls,03-result.xls,05-result.xls" 
# Must be turned into ['result1','result2', 'result3', 'result5']

splitted = input_string.split(',')

newsplitted =  ["".join(x.split('.')[0].split('-')[::-1]) for x in splitted ]

这就是我目前所尝试的:

final = []
for Y in newsplitted :
      final =[Y.replace('0','')]

只是为了学习,如果我想在另一个for循环中做最后的replace部分,怎么做????你知道吗


Tags: inforinputstringberesultxlsreplace
3条回答

一行一行的清单

input_string = "01-result.xls,2-result.xls,03-result.xls,05-result.xls"

result = [''.join(i.split('-')[::-1]).replace('.xls', '').replace('0', '') for i in input_string.split(',')]

结果

['result1', 'result2', 'result3', 'result5']

这与

result = []
for i in input_string.split(','):
    formatted_element = ''.join(i.split('-')[::-1]).replace('.xls', '').replace('0', '')
    result.append(formatted_element)

在您的情况下,您应该这样做:

[Y.replace('0', '') for Y in newsplitted]

或者

final = []
for Y in newsplitted :
      final.append(Y.replace('0',''))

我建议您阅读更多关于python中列表理解的内容

http://treyhunner.com/2015/12/python-list-comprehensions-now-in-color/

你可以随时查阅文件

https://docs.python.org/3.5/tutorial/datastructures.html#list-comprehensions

使用内置的map方法:

newsplitted =  ['result01', 'result2', 'result03', 'result05']
result = map(lambda x: x.replace('0', ''), newsplitted)

当您想对每个对象执行相同的操作时,使用map()是一种很好的做法 您的表中的项目。你知道吗

input_string = "01-result.xls,2-result.xls,03-result.xls,05-result.xls" 
result = [el[el.index('-')+1:]+el[el.index('-')-1] for el in input_string.replace(".xls","").split(',')]

结果是:

['result1', 'result2', 'result3', 'result5']

相关问题 更多 >