鱼C论坛

 找回密码
 立即注册
查看: 1408|回复: 5

第005讲:闲聊之Python的数据类型课后习题

[复制链接]
发表于 2019-7-18 17:01:41 | 显示全部楼层 |阅读模式

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

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

x
temp = input('请输入一个年份:')
while not temp.isdigit():
    temp = input('输入错误,请重新输入一个整数:')
year = int(temp)
if (year/400 == int(year/400)):
     print(temp + '是闰年')
else:
    if (year/4 == int(year / 4) and year/100 != int(year/100)):
        print(temp + '是闰年')
    else:
        print(temp + '不是闰年')



麻烦请教一下各位:year = int(temp)以及后面的代码为什么都不需要缩进??我试过缩进后反而错误,这是为什么呢
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2019-7-18 17:13:12 | 显示全部楼层
首先你得知道为什么要缩进,通俗讲就是同属一个模块才需要缩进,year = 这部分只是代码,不在任何结构里为甚要缩进呢?当出现while,if,for等语句时候,会成为一个结构,缩进的内容就是语句功能的实现,类似于一个标题,一段内容,标题定格,内容空两个字,你懂吗?
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-7-18 19:08:31 From FishC Mobile | 显示全部楼层
算闰年用模
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-7-21 09:57:23 | 显示全部楼层
此题中  若能进入while 循环  说明这是一个不全为数字的字符串,   而 int()  只能将全为整型的字符串转化为整型;因此将其放在循环内部会报错 ;不能进入循环则该字符串全为数字
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-7-21 10:36:00 | 显示全部楼层
首先你需要去了解你这个代码的意思,后面的if else并不是包括在while里面的,这个程序的while意思是,假如你输入的不是数字就让你重新输入,while只是检测你输入的是否为纯数字,因为年份肯定是全数字嘛,知道这个你就知道不能缩进year = int(temp)以及以后的代码了吧,你是没有理解这个代码while的意思。这样说就能懂了吧,不懂的话回复我,我在给你说。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-7-21 11:51:18 From FishC Mobile | 显示全部楼层
同一个模块放一块就对了,搞清楚每一个一局属于哪一个模块,缩进就是为了区分归属问题。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-1-17 01:19

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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