废废的棍仔
2021-10-11 00:57
采纳率: 66.7%
浏览 25
已结题

python中断while循环异常问题记录

迷糊了已经下面的while循环怎么都跳不过去,要么只执行一次,要么就一直循环,这个while循环不会被中断额:


print("\n\n" + "*"*10 + "模拟电视的点播功能"+ "*"*10)
class Tv:
    list_movie = ["天线宝宝","花园宝宝","小猪佩奇","米奇妙妙屋","猪猪侠","熊出没"]
    def __init__(self,show):
        self._show = show
    @property
    def show(self):
        return self._show
    @show.setter
    def show(self,value):
        if value in Tv.list_movie:
            self._show = "您点播了:" + value
        else:
            self._show = "无此电影"

tv = Tv("熊出没")
print("正在播放:",tv.show)
print("可以点播的电影:\n",Tv.list_movie)
ttv = True
while ttv == True:
    tv.show = str(input("请选择要点播的电影:"))
    print(tv.show)
    if tv.show in Tv.list_movie:
        ttv = False
    else:
        continue
  • 好问题 提建议
  • 收藏

2条回答 默认 最新

  • 想上天的狗 2021-10-11 02:13
    已采纳

    你向tv.show传值后最后不是变成了"无此电影"就是"您点播了...",不可能在list_movie里找到。
    你可以改成

    
     
    print("\n\n" + "*"*10 + "模拟电视的点播功能"+ "*"*10)
    class Tv:
        list_movie = ["天线宝宝","花园宝宝","小猪佩奇","米奇妙妙屋","猪猪侠","熊出没"]
        def __init__(self,show):
            self._show = show
        @property
        def show(self):
            return self._show
        @show.setter
        def show(self,value):
            if value in Tv.list_movie:
                self._show = "您点播了:" + value
            else:
                self._show = "无此电影"
    tv = Tv("熊出没")
    print("正在播放:",tv.show)
    print("可以点播的电影:\n",Tv.list_movie)
    ttv = True
    while ttv == True:
        tv.show = str(input("请选择要点播的电影:"))
        print(tv.show)
        if tv.show == "无此电影":
            continue
        else:
            ttv=False
    
    评论
    解决 1 无用
    打赏 举报
    1人已打赏
  • 查看更多回答(1条)

相关推荐 更多相似问题