| 
 | 
 
 
发表于 2020-5-20 22:55:45
|
显示全部楼层
 
 
 
 
回帖奖励 +1 鱼币
记得养成注释加#的习惯: 
 
- def palindrome(string):
 
 -     length = len(string)       #字符的长度? 是的   
 
 -     last = length-1              #这个作用是什么?-1的意思是?  最后一个字符的编号,减一是因为python计数从0开始
 
 -     length //= 2                 #回文联应该不会被2整除啊? 这个地板除是求长度的一半,长度偶数正好一半,长度奇数是减1后的一半
 
 -     flag = 1                       #就是个标记,等于1时是回文联
 
 -     for each in range(length):     #这个循环只检查一半长度,length已经地板除2了
 
 -         if string[each] != string[last]:      #这是把前半的字符和后半的作比对,比如6个字符,就是0-5,1-4,2-3
 
 -             flag = 0                # 有一个不相等,就不是回文联,把标记改成0
 
 -         last -= 1                  #每循环一次,last减1位,each加1位,互相对应
 
  
-     if flag == 1:                #flag等于1说明是回文联
 
 -         return 1
 
 -     else:
 
 -         return 0
 
  
- string = input('请输入一句话:')
 
 - if palindrome(string) == 1:
 
 -     print('是回文联!')
 
 - else:
 
 -     print('不是回文联!')
 
  复制代码 |   
 
 
 
 |