小甲鱼Python第五讲课后习题
0.Python中,int表示整型
bool:布尔类型
float:浮点型
str:字符串类型
1.为什么布尔类型(bool)的TRUE和FALSE分别用0和1表示?
计算机只认识二进制,由于二进制只有两个数0和1,因此用0和1来表示在合适不过了,因为不用浪费在资源在转换的过程上
2.使用int()将小数转换为整数,结果是向上取整还是向下取整?
向下取整
3.人类思维是习惯“四舍五入”法,有什么办法使得int()按照“四舍五入”的方式取整?
加0.5
例如:8.3----8,int(8.3+0.5)=8
8.6----9,int(8.6+0.5)=9
4.取的一个变量的类型,视频中介绍可以使用type()和 ininstance(),你更倾向使用哪个?
type() 直接返回一个输入的变量的类型
ininstance() 返回变量与另一个变量的类型比较,如果是统一类型则返回TRUE,不同则返回FALSE
5.Python3 可以给变量命名中文名,知道为什么吗?
Python3 源码文件默认使用 UTF-8编码(支持中文),这就使得一下代码是合法的
动手
0.
s.isalnum() 所有字符都是数字或者字母,返回 True,否则返回 False
s.isalpha() 所有字符都是字母,为真返回True,否则返回 False
s.isdigit() 所有字符都是数字,为真返回True,否则返回 False
s.islower() 所有字符都是小写,为真返回True,否则返回 False
s.isupper() 所有字符都是大写,为真返回True,否则返回 False
s.istitle()所有单词都是首字母大写,为真返回True,否则返回 False
s.isspace()所有字符都是空白字符,为真返回True,否则返回 False
6.判断给定年份是否为闰年
自己写的:需要改进小于0和大于3000的地方
while True:
temp = input('输入年份')
while temp.isspace():
temp=input('输入有误,请重新输入')
year = int(temp)
if year<0 or year>3000:
print('输入年份不合法')
else:
if year%4==0 and year%100!=0 or year%400==0:
print('闰年')
else:
print('不是闰年')
附小甲鱼的代码:
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 + ' 不是闰年!')