社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

Python While循环不执行else块

Richardson Harrison • 5 年前 • 1425 次点击  
def jump_slide():

    num=int(input('Enter a number :'))
    if num>20:
        print('slide under')
    else:
        print('jump over')

当不在一个时间循环中时,上面的运行正常。
但一旦进入下面的循环,它就会完全忽略else块

while True:
   jump_slide()

有什么建议吗。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/55013
 
1425 次点击  
文章 [ 3 ]  |  最新文章 5 年前
Sohaib Anwaar
Reply   •   1 楼
Sohaib Anwaar    6 年前

你的密码没问题。还有一种方法是做你的工作。

def jump_slide():

while(True):
    num=int(input('Enter a number :'))
    if num>20:
        print('slide under')
    else:
        print('jump over')
    if num==-1:
        break

jump_slide()

现在,如果输入大于20的num,则执行并在屏幕上打印“Slide under” 如果输入的数字小于20,则执行并在屏幕上“跳过”打印 如果按-1,则循环将中断,并在函数执行或程序结束后编码

Wanmi Siangshai
Reply   •   2 楼
Wanmi Siangshai    6 年前

if-else 是一个条件语句,因此取决于 if 它将执行任意一个语句。

程序中的一个示例:

Say you enter a number 30 when you run the program, it will print "slide under" but suppose 
if you enter 10 your program will print "jump over".

因此,根据您的输入,它将打印其中一个语句,但不会同时打印这两个语句。

Shivam
Reply   •   3 楼
Shivam    6 年前

代码依赖于函数“jump_slide()”中给变量num的输入。

如果给num变量一个小于20的值,它将执行else块。

否则,就语法而言,您的代码是好的。