起因是在学习递归的时候发现调用函数反转字符串的时候,输入与输出一样。
代码如下:
#反转字符串.py
def rvs(s):
if s == '' :
return s
else :
return rvs(s[1:])+s[0]
abc = input('abc是:')
rvs(abc)
print(abc)
发现输入与输出一样。
解决方法是修改最后一部分代码:
#反转字符串.py
def rvs(s):
if s == '' :
return s
else :
return rvs(s[1:])+s[0]
abc = input('abc是:')
ttt = rvs(abc)
print(ttt)
#也可以将print修改为print(rvs(abc))
因为调用函数后需要将函数的值赋给变量或者直接在print中输出。直接像调用main函数一样调用是不可行的。
初学python,许多地方和C,Java是不一样的,更何况c,java我也没学太明白,有很多地方需要想清楚,而不是看着错误的输出干着急。