美文网首页
二级-2.Python数据类型

二级-2.Python数据类型

作者: Yuanshuo | 来源:发表于2020-02-10 22:24 被阅读0次

    变量

    变量就是可以改变的量。

    变量赋值

    变量名 = 值
    
    #变量赋值
    bottle = 'Tsingtao'
    #输出变量
    print(bottle)
    

    变量的命名规范:

    • 汉字变量可以使用,但是不推荐
    • 可以使用数字,但是不能以数字开头
    • 不可以使用特殊字符,除了_
    • 变量严格区分大小写
    • 变量命名要有意义
    • 变量命名要避免和系统使用的保留关键字冲突
    #查询系统保留关键字
    import keyword
    print(keyword.kwlist)
    

    其他变量赋值方式

    变量名 = 值
    #多个变量赋相同值
    变量1 = 变量2 = 变量3 = 值
    #多个变量赋不同的值
    变量1, 变量2, 变量3 = 值1, 值2, 值3
    
    #多个变量赋相同的值
    girl_1 = girl_2 = girl_3 = '美丽的姑娘'
    print(girl_1)
    print(girl_2)
    print(girl_3)
    
    #多个变量赋不同的值
    girl_1, girl_2, girl_3 = '嫦娥仙子', '白骨夫人', '玉面狐狸'
    print(girl_1)
    print(girl_2)
    print(girl_3)
    

    Python数据类型

    Python中可以自定义数据类型,可以具有无限种数据类型。

    Python提供默认6种数据类型

    • Number类型 数值类型
    • String类型 字符类型
    • List类型 列表类型
    • Tuple类型 元组类型
    • Dict类型 字典类型
    • Set类型 集合类型

    Number 数值类型

    Number类型一共分为四个小类型:整型、浮点型、布尔型、复数

    整型

    整型就是数学中的整数,包含正整数、0、负数

    声明整型有四种方式:

    • 十进制:0~9
    • 二进制:0b0~1
    • 八进制:0o0~7
    • 十六进制:0x0~9 + A~F
    #十进制
    integer = 999
    print(integer)
    
    #二进制
    integer_0b = 0b1010111
    print(integer_0b)
    
    #八进制
    integer_0o = 0o7070777
    print(integer_0o)
    
    #十六进制
    integer_0x = 0xFBD
    print(integer_0x)
    

    浮点型

    浮点型就是小数类型。

    声明浮点型有两种方式:

    • 小数方式:变量 = 3.1415926
    • 科学计数法:变量 = 3.14e2 #相当于3.14 x 10^2
    floats = 3.14e2
    print(type(floats))
    print(floats)
    

    布尔类型

    计算机专用的数据类型,只有两个值:True和False

    True就是1 False就是0

    result = 5 > 3
    print(result)
    print(type(result))
    
    print(7+False)
    print(7+True)
    

    复数

    复数的完整结构(实数部分+虚数部分)

    • 实数:现实存在的所有数值都是实数,真实存在的数字
    • 虚数:不是真实存在的数字(i的平方为-1作为基本单位),不存在的数字
      • 数学:i^2 = -1,i就是虚部的基本单位,1i、2i、3i,i虚数单位
      • 计算机中:用j来表示i即可,j虚数单位

    声明复数有两种方式

    • 表达式方式:变量 = 实数 + 虚数
    • 特定功能:变量 = complex(实数,虚数值)
    #表达式方式
    imaginary = 7 + 6j
    print(imaginary)
    print(type(imaginary))
    
    #特定功能
    imaginary = complex(7, 6)
    print(imaginary)
    print(type(imaginary))
    

    String 字符类型

    字符类型就是文字类型。

    声明一个字符类型有三种方式:

    • 单引号:变量 = '内容'
    • 双引号:变量 = "内容"
    • 三引号:变量 = '''内容'''或者"""内容"""

    注意事项:如何识别字符串,就看外层是否有引号。

    string = 'IT搞三年,母猪赛貂蝉!'
    print(string, type(string))
    
    string = "IT搞三年,母猪赛貂蝉!"
    print(string, type(string))
    
    string = '''IT搞三年,母猪赛貂蝉!'''
    print(string, type(string))
    
    string = True
    print(string, type(string))
    
    string = 'True'
    print(string, type(string))
    

    转义字符

    通过某种格式使得字符的意义发生改变,这就是转义字符。

    常见转义字符有以下内容:

    转义字符 描述
    反斜杠符号
    ' 单引号
    " 双引号
    \a 响铃
    \b 退格
    \e 转义
    \000
    \n 换行
    \v 纵向制表符
    \t 横向制表符
    \r 回车
    \f 换页
    \oyy 八进制数,yy代表的字符
    \xyy 十六进制数,yy代表的字符
    \other 其他的字符以普通格式输出
    #就要在单引号中使用单引号 / 双引号
    string = '毛主席说:\'一切不以结婚为目的的恋爱,都是耍流氓。\''
    print(string)
    
    string = '甘蔗男:开始很甜,最后\n只剩渣的男人。'
    #print(string)
    string = '甘蔗男:开始很甜,最后\r只剩渣的男人。'
    print(string)
    

    元字符

    string = r'甘蔗男:开始很甜,最后\n只剩渣的男人。'
    print(string)
    

    List 列表类型

    列表就是一些数据的顺序组合,并且组合之后可以修改。

    列表格式:变量 = [值, 值, 值...]

    列表的标志符号:[]

    #列表
    listvar = []
    listvar = ['张哆来', '王咪发', '李索拉']
    print(listvar, type(listvar))
    
    #列表
    listvar = []
    listvar = ['张哆来', '王咪发', '李索拉']
    listvar[2] = '李西西'
    print(listvar, type(listvar))
    

    tuple 元组类型

    元组就是一些数据的顺序组合,并且组合之后不可修改。

    元组格式:变量 = (值, 值, 值...)

    元组的标志符号:()

    #元组
    tuplevar = []
    tuplevar = ('张哆来', '王咪发', '李索拉')
    print(tuplevar, type(tuplevar))
    
    #元组
    tuplevar = []
    tuplevar = ('张哆来', '王咪发', '李索拉')
    tuplevar[2] = '李西西'
    #print(tuplevar[2])
    print(tuplevar, type(tuplevar))
    

    Dict 字典类型

    字典就是具有键值映射关系的一组无序数据组合,可以修改。

    字典格式:变量 = {键:值, 键:值, 键:值...}

    字典的标志符号:{}

    #字典
    heros = {'呼保义':'宋江', '智多星':'吴用', '黑旋风':'李逵', '九纹龙':'史进'}
    print(heros, type(heros))
    
    #字典
    heros = {'呼保义':'宋江', '智多星':'吴用', '黑旋风':'李逵', '九纹龙':'史进'}
    print(heros['黑旋风'])
    print(heros, type(heros))
    

    Set 集合类型

    一组特定数据的无需组合,所有数据不会重复。

    集合格式:变量 = {值, 值, 值...}

    集合的标志符号:无

    #集合
    setvar = {'香蕉', '茄子', '苦瓜', '榴莲'}
    print(setvar, type(setvar))
    
    #集合
    setvar = {'香蕉', '茄子', '苦瓜', '榴莲', '榴莲'}
    print(setvar, type(setvar))
    

    数据类型转换

    将数据由当前类型变化为其它类型的操作就是数据类型转换。

    数据类型转换一共分为两类:自动数据类型转换(隐式转换),强制数据类型转换(显示转换)。

    自动数据类型转换/隐式转换

    自动数据类型转换是程序根据运算要求进行的转换

    • 自动数据类型转换不需要人工干预
    • 自动数据类型转换多发生在运算或者判断过程中
    • 转化时向着更加精确的类型转换
    #自动数据类型转换
    a = 1.111
    b = 2
    c = a + b
    print(type(a), type(b), type(c), c)
    

    强制数据类型转换/显示转换

    根据程序需要,由程序员人为改变数据类型的方式就是强制数据类型转换。

    int()将其他类型转化为整型

    • 数字整形转化后,还是原来的味道。
    • 浮点类型转化后,舍去小数部分。
    • 布尔值转化后,True-->1,False-->0
    • 字符串转化,仅纯整型字符串可以转化(浮点型或者带有其他字符都不可以转化)
    • 复数不可以转化
    var = '998'
    newvar = int(var)
    print(newvar)
    
    var = '白裤裆寒冬一击'
    newvar = int(var)
    print(newvar)
    

    float()将其他类型转化为浮点型

    • 整型转化后,可变为浮点型后 +.0
    • 浮点数不需要转化,转化也不会变化
    • 布尔值转化后,True-->1.0,False-->0.0
    • 字符串,纯整型字符串和纯浮点型字符串可以转化,其他都不行

    complex()将其他类型转化为复数

    • 整形转化后,整型+0j
    • 浮点型转化后,浮点型+0j
    • 布尔型转化后,True-->(1+0j),False-->(0+0j)
    • 字符串,纯整型字符串和纯浮点型字符串可以转化,其他都不行
    • 复数,无需转化

    bool()将其他类型转化为布尔型

    转化为布尔值为false的情况:

    • 整型:0
    • 浮点型:0.0
    • 复数:0+0j
    • 布尔:False
    • 字符串:''空字符串
    • 列表:[]空列表
    • 元组:()空元组
    • 字典:{}空字典
    • 集合:set()空集合

    str()将其他类型转化为字符串

    所有转换均改变类型为字符串,表示方式依旧不变。

    list()将其他类型转化为列表类型

    在Python中有五种可迭代序列,可以互相转换

    字符串、列表、元组、字典、集合

    注意:

    • 字符串转化时,每个字符变成列表中的一个值
    • 字典类型转化时,仅将字典的键部分转化为列表,忽略值部分

    tuple()将其他类型转化为元组类型

    注意:

    • 字符串转化时,每个字符变成元组中的一个值
    • 字典类型转化时,仅将字典的键部分转化为元组,忽略值部分

    set()将其他类型转化为集合类型

    注意:

    • 字符串转化时,每个字符变成集合中的一个值
    • 字典类型转化时,仅将字典的键部分转化为集合,忽略值部分

    dict()将其他类型转化为字典类型

    将其他类型转化为字典类型时需按照指定的格式才可以转化:(列表和元组的组合可以)

    var = [[1,'xixi'], [2,'haha'], [3,'wawa']]
    new_var = dict(var)
    print(var, type(var))
    print(new_var, type(new_var))
    
    var = ((1,'xixi'), [2,'haha'], [3,'wawa'])
    new_var = dict(var)
    print(var, type(var))
    print(new_var, type(new_var))
    

    相关文章

      网友评论

          本文标题:二级-2.Python数据类型

          本文链接:https://www.haomeiwen.com/subject/otozxhtx.html