第005讲:闲聊之Python的数据类型

测试题:

  1. 在 Python 中,int 表示整型,那你还记得 bool、float 和 str 分别表示什么吗?

bool:布尔型、float:浮点型、str:字符串型

  1. 你知道为什么布尔类型(bool)的 True 和 False 分别用 1 和 0 来代替吗?

计算机是二进制表示的,二进制只有0 和 1两个数,因此用 0 和 1 来表示 False 和 True 不用浪费资源在转换的过程上。

  1. 使用 int() 将小数转换为整数,结果是向上取整还是向下取整呢?

直接将小数点后面的数截掉,也就是向下取整。eg:int(5.5)的结果为5

  1. 我们人类思维是习惯于“四舍五入”法,你有什么办法使得 int() 按照“四舍五入”的方式取整吗?
    a=int(a+0.5)

  2. 取得一个变量的类型,视频中介绍可以使用 type() 和 isinstance(),你更倾向于使用哪个?

type 返回类型
isinstance 两个参数 返回true/false

>>> a=1
>>> type(a)
<class 'int'>
>>> isinstance(a,int)
True
>>> isinstance(a,str)
  1. Python3 可以给变量命名中文名,知道为什么吗?

因为python3 支持UTF-8编码

动动手:

  1. 当用户输入错误类型的时候,及时提醒用户重新输入,防止程序崩溃。
temp = input("不妨猜一下小甲鱼现在心里想的是哪个数字:")
# not操作符的作用是将布尔类型的结果翻转:即取反的意思,not True == Flase
while not isinstance(temp, int):
    print("抱歉,输入不合法,", end='')
    temp = input("请输入一个整数:")

注意上面这样是错误的,因为input() 的返回值始终是字符串,所以 type(temp) 永远是 <class ‘str’>!

正确做法:使用了字符串类的一些方法

num=input("请输入:")
while not num.isdigit():
    num=input("重新输入:")
print("输入正确")

  1. 写一个程序,判断给定年份是否为闰年。(注意:请使用已学过的 BIF 进行灵活运用)
    这样定义闰年的:能被4整除但不能被100整除,或者能被400整除都是闰年。
num=input("请输入整数:")
while not num.isdigit():
    num=input("重新输入:")
###

year=int(num)
if ((year%4==0) and (year%100!=0)) or (year %400==0):
    print("Yes")
else:
    print("No")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值