测试题:
0. 在 Python 中,int 表示整型,那你还记得 bool、float 和 str 分别表示什么吗?
int---整型
bool---布尔类型
float---浮点数
str---字符串
1. 你知道为什么布尔类型(bool)的 True 和 False 分别用 1 和 0 来代替吗?
因为它只认识二进制数(0和1)。所有的编程语言最终都会转换成简单的二进制序列给 CPU 按照一定的规则解析。
2. 使用 int() 将小数转换为整数,结果是向上取整还是向下取整呢?
当数值大于0时:截断式取整,向下取整,只保留整数位数值。
当数值小于0时:反之。
eg:
3. 我们人类思维是习惯于“四舍五入”法,你有什么办法使得 int() 按照“四舍五入”的方式取整吗?
加上0.5
eg:
1 a=int(input(输入任意浮点数:)) 2 print(int(a)) 3 print(int(a+0.5))
4. 取得一个变量的类型,视频中介绍可以使用 type() 和 isinstance(),你更倾向于使用哪个?
type()---输出什么类
isinstance( , )---判断两个值类型是否一致。
相对而言,在以后的使用上isinstance()更方便使用。
注:建议使用 isinstance(),因为它的返回结果比较直接,另外小甲鱼说: type() 其实并没有想象的那么简单。
5. Python3 可以给变量命名中文名,知道为什么吗?
Pyhton3 源码文件默认使用utf-8编码(支持中文)。
6. 【该题针对零基础的鱼油】你觉得这个系列教学有难度吗?
动动手:
0. 针对视频中小甲鱼提到的小漏洞,再次改进我们的小游戏:当用户输入错误类型的时候,及时提醒用户重新输入,防止程序崩溃。
以上方法的思路是正确的,不过似乎忽略了一点儿:就是 input() 的返回值始终是字符串,所以 type(temp) 永远是 <class 'str'>!
其实有蛮多的做法可以实现的,不过就目前我们学习过的内容来看,还不足够。
所以,在让大家动手完成这道题之前,小甲鱼介绍一点新东西给大家!
s 为字符串
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。
例如:
>>> s = 'I LOVE FISHC'
>>> s.isupper()
>>> True
好了,文字教程就到这里,大家赶紧趁热打铁,改造我们的小游戏吧!
1. 写一个程序,判断给定年份是否为闰年。(注意:请使用已学过的 BIF 进行灵活运用)
这样定义闰年的:能被4整除但不能被100整除,或者能被400整除都是闰年。
1 print("查询年份是否为闰年") 2 year=input("请输入要查询的年份:") 3 4 def IsLeapYear( year): 5 year=int(year) 6 if (year % 400 == 0) or ((year % 4 == 0) and (year % 100 != 0)): 7 print(str(year) + "年为闰年。") 8 return True 9 else: 10 print(str(year)+"年不为闰年") 11 return False 12 # Python isdigit() 方法检测字符串是否只由数字组成 13 if not year.isdigit(): 14 temp=int(input("抱歉输入格式有误,请重新输入:")) 15 IsLeapYear( temp) 16 else: 17 IsLeapYear( year)
2. 请写下这一节课你学习到的内容:格式不限,回忆并复述是加强记忆的好方式!