鱼C论坛

 找回密码
 立即注册
查看: 3626|回复: 4

[技术交流] 《零基础入门学习Python》第5讲笔记

[复制链接]
发表于 2017-6-9 20:16:23 | 显示全部楼层 |阅读模式

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

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

x
005  Python的数据类型

True / False 可以四则计算;Int() 整型 会截断5.99—5;Float() 浮点型;Str() 字符串。

尽量不要用BIF来做变量。

Type()函数,可获取变量的类型,但是更推荐使用Isinstance()
>>> a=5.99
>>> isinstance(a,str)
False
也可以不输入变量
>>> isinstance(320,int)
True
>>> isinstance(32.05,float)
True

Input()的返回值始终是字符串,所以type(temp)永远是<class ‘str’>,新知识:

使int()按照四舍五入的方式取整的方法
5.4变5: int(5.4+0.5)

# 动动手
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 + ' 不是闰年!')


评分

参与人数 2鱼币 +4 收起 理由
康小泡 + 2
小甲鱼 + 2

查看全部评分

本帖被以下淘专辑推荐:

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

使用道具 举报

发表于 2017-6-9 20:22:21 | 显示全部楼层
完全可以这样的:
temp = input('请输入一个年份:')
while not temp.isdigit():
    temp = input("抱歉,您的输入有误,请输入一个整数:")

year = int(temp)
#接下来是判断闰年,除4取余==0的就是闰年,其他不是
if year % 4 == 0:
    print(temp + ' 是闰年!')
else:
    print(temp + ' 不是闰年!')

写那么多重复的判断有意思吗?

评分

参与人数 1鱼币 +3 收起 理由
康小泡 + 3

查看全部评分

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

使用道具 举报

 楼主| 发表于 2017-6-9 20:52:33 | 显示全部楼层
china25qd 发表于 2017-6-9 20:22
完全可以这样的:

似乎还是有丢丢必要的~,闰年判断依据如下:
1、非整百年:能被4整除的为闰年。(如2004年就是闰年,2100年不是闰年)
2、整百年:能被400整除的是闰年。(如2000年是闰年,1900年不是闰年)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-6-9 21:03:41 | 显示全部楼层
TommyTimfy 发表于 2017-6-9 20:52
似乎还是有丢丢必要的~,闰年判断依据如下:
1、非整百年:能被4整除的为闰年。(如2004年就是闰年,2100 ...

哦,那就改成这样的吧!
temp = input('请输入一个年份:')
while not temp.isdigit():
    temp = input("抱歉,您的输入有误,请输入一个整数:")

year = int(temp)
#接下来是判断闰年,除4取余==0的就是闰年,其他不是
if year % 400 == 0:
    print(temp + '是闰年!')
if year % 100 == 0:
    print(temp + '不是闰年!')
if year % 4 == 0:
    print(temp + ' 是闰年!')
else:
    print(temp + ' 不是闰年!')
真麻烦,最近判定闰年的办法竟然变掉了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-11-4 10:42:21 | 显示全部楼层
使int()按照四舍五入的方式取整的方法
5.4变5: int(5.4+0.5)
这里确定不是变成6吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-22 14:50

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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