打卡(第五讲)

测试题:

  1. 在 Python 中,int 表示整型,那你还记得 bool、float 和 str 分别表示什么吗?
    布尔逻辑、浮点、字符串

  2. 你知道为什么布尔类型(bool)的 True 和 False 分别用 1 和 0 来代替吗?
    计算机内部都是二级制运算的,只有0、1

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

  4. 我们人类思维是习惯于“四舍五入”法,你有什么办法使得 int() 按照“四舍五入”的方式取整吗?
    if x-int(x)>=0.5: int(x)+1 else: int(x)
    小甲鱼说(果然还是小甲鱼聪明):
    5.4 “四舍五入”结果为:5,int(5.4+0.5) == 5
    5.6 “四舍五入”结果为:6,int(5.6+0.5) == 6

  5. 取得一个变量的类型,视频中介绍可以使用 type() 和 isinstance(),你更倾向于使用哪个?
    type(),isinstance()还需要猜
    小甲鱼说(好吧我理解错了):
    建议使用 isinstance(),因为它的返回结果比较直接,另外 type() 其实并没有你想象的那么简单,我们后边会讲到。

  6. Python3 可以给变量命名中文名,知道为什么吗?
    what???等会去试一下!
    小甲鱼说:
    Pyhton3 源码文件默认使用utf-8编码(支持中文),这就使得以下代码是合法的:

    >>> 小甲鱼 = '我爱你'  
    >>> print(小甲鱼)
    >>> 我爱你
  7. 【该题针对零基础的鱼油】你觉得这个系列教学有难度吗?
    目前还好啦

动动手:

  1. 针对视频中小甲鱼提到的小漏洞,再次改进我们的小游戏:当用户输入错误类型的时候,及时提醒用户重新输入,防止程序崩溃。
    如果你尝试过以下做法,请举下小手:
  2. temp = input(“不妨猜一下小甲鱼现在心里想的是哪个数字:”)
  3. # 这种想法是因为type(1)会返回 < class ‘int’ >,如果type(temp)返回结果一致说明输入是整数。
  4. while type(temp) != type(1):
  5. print(“抱歉,输入不合法,”, end=”)
  6. temp = input(“请输入一个整数:”)
    复制代码
    或者可能这样:
  7. temp = input(“不妨猜一下小甲鱼现在心里想的是哪个数字:”)
  8. # not操作符的作用是将布尔类型的结果翻转:即取反的意思,not True == Flase
  9. while not isinstance(temp, int):
  10. print(“抱歉,输入不合法,”, end=”)
  11. temp = input(“请输入一个整数:”)
    复制代码
    以上方法的思路是正确的,不过似乎忽略了一点儿:就是input()的返回值始终是字符串,所以type(temp)永远是< class ‘str’ >!

其实有蛮多的做法可以实现的,不过就目前我们学习过的内容来看,还不足够。

所以,在让大家动手完成这道题之前,小甲鱼介绍一点新东西给大家!

s为字符串

s.isalnum() 所有字符都是数字或者字母,为真返回 Ture,否则返回 False。

s.isalpha() 所有字符都是字母,为真返回 Ture,否则返回 False。

s.isdigit() 所有字符都是数字,为真返回 Ture,否则返回 False。

s.islower() 所有字符都是小写,为真返回 Ture,否则返回 False。

s.isupper() 所有字符都是大写,为真返回 Ture,否则返回 False。

s.istitle() 所有单词都是首字母大写,为真返回 Ture,否则返回 False。

s.isspace() 所有字符都是空白字符,为真返回 Ture,否则返回 False。

例如:

s = ‘I LOVE FISHC’
s.isupper()
True

好了,文字教程就到这里,大家赶紧趁热打铁,改造我们的小游戏吧!

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

    yearstr = input ('请输入一个年份:')
    while not yearstr.isdigit():
        yearstr = input('输入不合法,请重新输入:')
    
    year = int(yearstr)
    if year%4 == 0 and year%100 !=0:
        print (yearstr+'年是闰年')
    else:
        print (yearstr+'年不是闰年')

    错了错了!!!还有世纪闰年(能被400整除)这么一说。。so:

    yearstr = input ('请输入一个年份:')
    while not yearstr.isdigit():
        yearstr = input('输入不合法,请重新输入:')
    
    year = int(yearstr)
    if year%400==0:
        print(yearstr + '年是世纪闰年')
    else:
        if year%4 == 0 and year%100 !=0:
            print (yearstr+'年是闰年')
        else:
            print (yearstr+'年不是闰年')
  2. 请写下这一节课你学习到的内容:格式不限,回忆并复述是加强记忆的好方式!
    /(原) vs. //(砍)
    ** 幂,优先级高于左侧一元运算符、低于右侧一元运算符
    not高于and高于or

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值