学习笔记-小甲鱼Python3学习第五讲

发布时间:2019-09-25 08:22:44编辑:auto阅读(1761)

    数据类型:整型、浮点型、布尔型

    整型:1、234、54

    浮点型:12.234、2.3e5 = 230000.0、1.5e-3 = 0.0015

    布尔型:True、False。True + True 返回 2,True + False 返回1,True  *  False 返回0,True / False 会报错


    类型转换:

    image.png

    字符型转整型:

    >>> a = '520'

    >>> b = int(a)

    >>> a

    '520'

    >>> b

    520


    浮点型转整型:

    >>> a = 5.68

    >>> b = int(a)

    >>> a

    5.68

    >>> b

    5


    字符型转浮点型:

    >>> a = '520'

    >>> b = float(a)

    >>> a

    '520'

    >>> b

    520.0


    整型转浮点型:

    >>> a = 520

    >>> b = float(a)

    >>> a

    520

    >>> b

    520.0


    浮点型转字符串:

    >>> a = 6.52

    >>> b = str(a)

    >>> a

    6.52

    >>> b

    '6.52'


    获取关于数据类型的信息,使用type()函数和isinstance()函数:

    >>> a = '520'

    >>> type(a)

    <class 'str'>

    >>> type(5.32)

    <class 'float'>

    >>> type(True)

    <class 'bool'>

    >>> type(3e-9)

    <class 'float'>


    >>> a = '520'

    >>> isinstance(a,str)

    True

    >>> isinstance(a,int)

    False

    >>> isinstance(a,float)

    False


    二、课后作业:

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

    bool布尔型,float浮点型,str字符型。


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

    计算机只认识二进制的0和1,所以用True和False分别用1和0代替省去了转换的步骤


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

    向下取整,小数点后面的都丢弃


    3.人类思维是习惯“四舍五入”法,有什么办法使得int()按照“四舍五入”的方式取整?

    原浮点数加0.5,然后再转换为int型

    例:

    >>> a = 3.73

    >>> int( a + 0.5 )

    4


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

    type() 直接输入变量后返回类型;isinstance() 需要先输入变量和类型,函数讲变量和类型做比较厚,相同返回True,不同返回False。


    5.Python3 可以给变量命名中文名,知道为什么吗?

    Python3 默认使用 UTF-8编码,支持中文,

    ---------------------分割线,哈哈哈-------------------

    三、动动手:

    0.针对视频中小甲鱼提到的小漏洞,再次改进我们的小游戏:当用户输入错误类型的时候,及时提醒用户重新输入,防止程序崩溃。 

    print('--------猜数字--------')

    import random

    num = random.randint(1,10)

    count = 3

    guess =0

    print('请输入你猜的数字:',end='')

    while guess != num and count > 0:

        tmp = input()

        while not tmp.isdigit():

            tmp = input('sorry,输入类型有误,请输入一个整数:')

        guess = int(tmp)

        count = count - 1

        if guess == num:

            print('猜对啦!')

        else:

            if guess > num:

                print('大了!')

            else:

                print('小了!')

            if count > 0:

                print('再来一次:',end='')

            else:

                print('机会用完了!')

    print('GAME OVER!')


    1.写一个程序,判断给定年份是否为闰年

    print('-----------------求闰年------------')

    tmp = input('请输入年份:')

    while not tmp.isdigit():

        tmp = input('sorry,请输入正确年份:')

    year = int(tmp)

    if year/400 == int(year/400):

        print(tmp+'是闰年')

    else:

        if (year/4 == int(year/4)) and (year/100 != int(year/100)):

            print(tmp+'是闰年')

        else:

            print(tmp+'不是闰年')


关键字