如果我有一个字符串列表,例如:
[("aaaa8"),("bb8"),("ccc8"),("dddddd8")...]
Run Code Online (Sandbox Code Playgroud)
为了摆脱8每个字符串中的所有s,我该怎么办?我尝试使用strip或replace在for循环中,但它不像普通字符串(不在列表中)那样工作.有没有人有建议?
Joc*_*zel 44
试试这个:
lst = [("aaaa8"),("bb8"),("ccc8"),("dddddd8")]
print([s.strip('8') for s in lst]) # remove the 8 from the string borders
print([s.replace('8', '') for s in lst]) # remove all the 8s
Run Code Online (Sandbox Code Playgroud)
Tg.*_*Tg. 10
除了使用循环和理解之外,您还可以使用map
lst = [("aaaa8"),("bb8"),("ccc8"),("dddddd8")]
mylst = map(lambda each:each.strip("8"), lst)
print mylst
Run Code Online (Sandbox Code Playgroud)
小智 5
更快的方法是加入列表,替换 8 并分割新字符串:
mylist = [("aaaa8"),("bb8"),("ccc8"),("dddddd8")]
mylist = ' '.join(mylist).replace('8','').split()
print mylist
Run Code Online (Sandbox Code Playgroud)