仿生人摸电子鱼 发表于 2021-1-17 23:47:29

回文联的问题

这里list(2)前面为啥还要加list?   我用list1 == list2, 跑出来的程序是不对的,是为啥呀

def HuiWenLian(string):
    list1 = list(string)
    list2 = reversed(list1)
    if list1 == list(list2):    ##这里list(2)前面为啥还要加list?
      return 1
    else:
      return 0
string = input("请输入一句话:")
if HuiWenLian(string) == 1:
    print("是回文联!")
else:
    print("不是回文联!")

jackz007 发表于 2021-1-18 01:20:36

本帖最后由 jackz007 于 2021-1-18 10:19 编辑

reversed(list1)
      因为 reversed() 返回的是一个迭代器对象,必须将其转化为列表才可以和 list1 进行比较。
      当然,如果这样写就可以直接进行比较了
    list2 = list(reversed(list1))
    if list1 == list2:

bonst 发表于 2021-1-18 13:49:18

楼上正解

qq1151985918 发表于 2021-1-18 16:09:43

{:9_227:}{:9_227:}{:9_227:}。。。。。。。。。。。。。。
页: [1]
查看完整版本: 回文联的问题