函数如下。我想为此使用一个while循环而不是任何方法,因为我想更多地练习使用while循环和if语句。
def remove_leading_zeros(s):
'''(str) -> str
Return s, but without any extra leading zeros
e.g. given "007", return "7"
Precondition: Each character of s is a number.
'''
i = 0
r = ''
while i < len(s):
if s[i] != '0':
r = r + s[i]
i += 1
return r
所以,当我输入 时remove_leading_zeros('0001950')
,我希望输出为'1950'
.
但是,使用上面的函数,我似乎省略了所有的零。我应该修改什么来创建一个只省略前导零的函数?
我也试过r = r + s[i:]
了,所以一旦遇到非零,它会在之后返回所有内容,但我不确定如何结束循环。
解决。感谢所有帮助!