鱼C论坛

 找回密码
 立即注册
查看: 1963|回复: 3

这个是python第19章的作业

[复制链接]
发表于 2017-7-24 16:02:39 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
def circle(x):
    temp = list(x)
    length = len(temp)
    sum = []
    while length:
        sum.append(temp.pop())
        length -=1
    if sum == list(x):
        print('是回文联!')
    else:
        print('不是回文联!')
x = input('请输入一句话:')
circle(x)

我想问的是length为什么不会随着temp的长度减少而减少
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-7-24 16:30:04 | 显示全部楼层
会减少,从列表中弹出了元素。感觉你说的不太明白。
  1. def circle(x):
  2.     temp = list(x)
  3.     length = len(temp)
  4.     sum = []
  5.     while length:
  6.         sum.append(temp.pop())
  7.         length -=1
  8.         print(length)
  9.     if sum == list(x):
  10.         print('是回文联!')
  11.     else:
  12.         print('不是回文联!')
  13. x = input('请输入一句话:')
  14. circle(x)
复制代码


结果:
  1. 请输入一句话:上海自来水来自海上
  2. 8
  3. 7
  4. 6
  5. 5
  6. 4
  7. 3
  8. 2
  9. 1
  10. 0
  11. 是回文联!
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-7-24 16:46:14 | 显示全部楼层
和vvv 发表于 2017-7-24 16:30
会减少,从列表中弹出了元素。感觉你说的不太明白。

我的意思是 假如我不加length-=1他就不会减少了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-7-24 16:47:50 | 显示全部楼层
本帖最后由 和vvv 于 2017-7-24 16:51 编辑

的确不会减少。你不加这个的话,while会永远循环,程序就没用了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-25 19:54

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表