关于list里面数据问题
请看以下代码:def trim(s):
if s[:1] == ' ':
return trim(s[1:])
elif s[-1:]==' ':
return trim(s[:-1])
return s
# 测试:
if trim('hello ') != 'hello':
print('测试失败!')
elif trim(' hello') != 'hello':
print('测试失败!')
elif trim(' hello ') != 'hello':
print('测试失败!')
elif trim(' hello world ') != 'hello world':
print('测试失败!')
elif trim('') != '':
print('测试失败!')
elif trim(' ') != '':
print('测试失败!')
else:
print('测试成功!'
这个代码运行 最终显示‘测试成功‘
那么问题来了,
trim('')
函数里面
if s[:1] == ' ':
return trim(s[1:])
elif s[-1:]==' ':
return trim(s[:-1])
对于trim(''),s[:1]=='',s[1:2]=='' 我在Python里面用 bool(s[:1]==''),bool([1:2]==''),显示的值都是true 那这个函数为什么不是无限循环呢?
对于s='' 为什么s[0:1],s[1:2],s[2:3]....等等都是''
无法理解上述两个问题