19课课后作业!回文联问题!
本帖最后由 Twilight6 于 2020-3-29 15:08 编辑def back(x = '上海自来水来自海上'):
x = list(x);a = x.reverse()
if a == x :
print("是回文联!")
else:
print("不是回文联!")
1,这个代码为什么不能判定是不是回文连?
2,顺便问下下面这个代码为什么没有返回?
x = '1,2,3'
x = list(x)
a = x.reverse()
>>>a
>>>
#就成这样了是为什么??? 因为reverse函数是在原列表上进行的修改,没有返回值。
所以 执行完 a = x.reverse()后,a=None
你应该用a=reversed(x)
def back(x = '上海自来水来自海上'):
x = list(x);a = list(reversed(x))
if a == x :
print("是回文联!")
else:
print("不是回文联!") 回文联可以用字符串切片直接判断
s = '上海自来水来自海上'
if s == s[:: -1] : print("是回文联!")
else : print("不是回文联!") 你的两个问题其实都出于一个原因:
Python的列表方法大部分都是没有返回值的,
所以,直接
x.reverse
就好
或者你就是想用另外一个值,就这么写:
a = x[::-1] 考古{:10_256:}
页:
[1]