鱼C论坛

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

[已解决]看一下这个代码有几个问题

[复制链接]
发表于 2020-6-14 11:49:19 | 显示全部楼层 |阅读模式

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

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

x
尝试一个新的函数 int_input(),当用户输入整数的
def int_input(prompt=''):
    while True:
        try:
            int(input(prompt))
            break
        except ValueError:
            print('出错,您输入的不是整数!')

int_input('请输入一个整数:')
时候正常返回,否则提示出错并要求重新输入。
1.用户输入整数的时候返回?返回是怎么返回的在程序上有什么体现吗?2.这里break的作用在这里怎么理解啊?可以不加吗
最佳答案
2020-6-14 11:51:38
本帖最后由 Twilight6 于 2020-6-14 11:54 编辑



这样才算正常返回,你之前的函数返回的是 None
def int_input(prompt=''):
    while True:
        try:
            return int(input(prompt))
        except ValueError:
            print('出错,您输入的不是整数!')

int_input('请输入一个整数:')

因为如果题目要求只验证一次,那么加break 验证成功退出循环

但是如果多次验证你输入的值,那么去掉break 才行

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-6-14 11:51:38 | 显示全部楼层    本楼为最佳答案   
本帖最后由 Twilight6 于 2020-6-14 11:54 编辑



这样才算正常返回,你之前的函数返回的是 None
def int_input(prompt=''):
    while True:
        try:
            return int(input(prompt))
        except ValueError:
            print('出错,您输入的不是整数!')

int_input('请输入一个整数:')

因为如果题目要求只验证一次,那么加break 验证成功退出循环

但是如果多次验证你输入的值,那么去掉break 才行

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-6-14 11:53:25 | 显示全部楼层
1.你这根本没有返回语句……
2.不break就无限死循环了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-6-14 12:04:38 | 显示全部楼层
Twilight6 发表于 2020-6-14 11:51
这样才算正常返回,你之前的函数返回的是 None

我是直接复制课后33讲作业的答案的代码的,答案是有问题是吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-20 16:57

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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