我有一个像这样开始的功能:
def solve_eq(string1):
string1.strip(' ')
return string1
我正在输入字符串'1 + 2 * 3 ** 4',但是return语句根本没有剥离空格,我无法弄清楚原因。我甚至尝试过.replace()没有运气。
答案 0 :(得分:9)
Strip不会删除任何地方的空白,只会在开头和结尾删除。试试这个:
def solve_eq(string1):
return string1.replace(' ','')
在这种情况下使用strip()
是多余的(显然,感谢评论员!)。
P.S。在我休息之前奖励有用的片段(感谢OP!):
import re
a_string = re.sub(' +', ' ', a_string).strip()
答案 1 :(得分:4)
选项1
def solve_eq(string1):
string1 = string1.replace(' ', '')
return string1
选项2
def solve_eq(string1):
return string1.replace(' ', '')
编辑:
而不是string1.strip(' ')
,请使用string1.replace(' ', '')
答案 2 :(得分:0)
strip
返回剥离的字符串;它不会修改原始字符串。