zoukankan      html  css  js  c++  java
  • 数据类型

    数字类型内置方法

    一丶整型内置方法(int)

    1.用途:年龄

    2.定义:可以使用int()方法将纯数字的字符串转为十进制的整型

    x = int('11.1')  # 报错
    print(x)
    

    二丶浮点型内置方法(float)

    1.用途:薪资,身高,体重

    2.定义:可以使用float()方法将纯数字的字符串转为浮点型数字。

    x = float('111')
    print(x)
    print(type(x))
    

    111.0

    <class 'float'>

    3.常用操作+内置方法:算数运算+比较运算

    4.存一个值or多个值:一个值

    5.有序or无序:无有序无序一说

    6.可变or不可变:不可变数据类型

    字符串类型内置方法

    1.用途:

    描述性质的东西,如人的名字、单个爱好、地址、国家等

    2.定义:

    使用'',"",'''''',""""""包裹的一串字符

    ​ ~u'unicode':uniicode编码的字符串

    ​ ~b'101':二进制编码的字符串

    ​ ~r' ':原生字符串,也就是说' '这是普通的两个字符,并没有换行的意思

    name = 'nick'	#name = str('nick')
    s1 = str(1.1)
    s2 = str([1,2,3])
    print(f's1:{s1},type:{type(s2)}')
    print(f's2:{s2},type:{type(s2)}')
    

    s1:1.1,type:<class 'str'>
    s2:[1, 2, 3],type:<class 'str'>

    3.常用操作+内置方法:

    1.1 优先掌握(*****************)

    ​ 1.按索引取值(只可取,不可变)

    name = 'shiqi zz'
          # 01234567  #索引序号
    
    print(f'索引为3:{name[3]}')
    print(f'索引为5:{name[5]}')
    print(f'索引为-2:{name[-2]}')
    

    索引为3:q
    索引为5:
    索引为-2:z

    ​ 2.切片(顾头不顾尾,步长)

    name = 'shiqi zz2019'
    #       01234567891011 索引序号
    print(f'切片-3到最后:{name[-3:]}')
    print(f'切片3-8:{name[3:8]}')
    print(f'切片3-8,步长为2:{name[3:8:2]}')
    print(f'切片3-最后,步长为2:{name[3::2]}')
    
    print(f'切片所有:{name[:]}')
    print(f'反转所有:{name[::-1]}')
    print(f'切片-5--2:{name[-5:-2]}')
    print(f'切片-2--5:{name[-2-5:-1]}')
    

    切片-3到最后:019
    切片3-8:qi zz
    切片3-8,步长为2:q z
    切片3-最后,步长为2:q z09
    切片所有:shiqi zz2019
    反转所有:9102zz iqihs
    切片-5--2:z20
    切片-2--5:102

    3.长度len

    name = 'shiqi zz 2019'
    print(len(name))
    

    10

    4.成员运算in和not in

    msg = 'my name is shiqi zz,i am handsome'
    
    print(f"'shiqi' in msg:{'shiqi' in msg}")
    print(f"'nick' not in msg:{'nick' not in msg}")
    print(f"not 'nick' in msg:{not 'nick' in msg} ")
    

    'shiqi' in msg:True
    'nick' not in msg:True
    not 'nick' in msg:True

    5.移除空白strip()

    name = '#@  shi qi zz&*^'
    print(f"name.strip('@#^&*'):{name.strip('@#^&*')}") # strip()默认为'',并且不修改原值,新创建空间
    print(f"name:{name}")
    
    print(f"name.strip('#@ ^&*'):{name.strip('#@ ^&*')}")
    name = '  shi qi  '
    print(f"name.strip:{name.strip()}")  # strip默认切除两边空白
    
    #strip()应用场景
    pwd = input('password: ')# 用户可能会手抖输入空格
    if pwd.strip() == '123':
        print('密码输入成功')
    
    

    name.strip('@#^&'): shi qi zz
    name:#@ shi qi zz&
    ^
    password: 123
    密码输入成功
    name.strip('#@ ^&*'):shi qi zz
    name.strip:shi qi

    6.切分split

    info = 'nick:male:19'
    info_list1 = info.split(':')
    info_list2 = info.split(':',1)
    
    print(f'info_list1:{info_list1}')
    print(f'info_list2:{info_list2}')
    

    info_list1:['nick', 'male', '19']
    info_list2:['nick', 'male:19']

    7.循环

    msg = 'hello nick'
    
    for i in msg:
        print(i)
    

    h
    e
    l
    l
    o
    n
    i
    c
    k

    1.2 需要掌握(**)

    name = '  #@shiqi* '
    
    name.lstrip('#')  # 左切割
    name.rstrip('*')  # 右切割
    
    name.lower()   # 全小写
    name.upper()   # 全大写
    
    name.startswith(' ')   # 判断开头为什么,返回布尔值
    name.endswith('*')    # 判断结尾为什么,返回布尔值
    
    name.rstrip('*')   # 从右开始切割
    
    lis = {'nick','male','19'}
    print(':'.join(lis))   #nick:male:19    拼接,必须为相同类型
    
    name.replace('qi','ba')   # 替换
    
    name.isdigit()  #判断是否为数字
    
    
    

    列表类型内置方法

    1.定义方式:[]内逗号隔开多个元素(任意数据类型)

    2.使用方法

    name_list = ['nick','jason','tank','sean']
    
    # 优先掌握
    name_list[0]   #正向取值
    
    name_list[-2] #反向取值
    
    name_list[0] = 'nick handsom'  # 修改值
    
    
    name_list[0:3:2]  # 切片
    
    name_list   # 长度
    
    'tank' in name_list    # 成员运算in 和  not in
    
    name_list.append('shiqi')  # 追加
    
    del name_list[2]    # 删除
    
    for name in name_list:
        print(name)   #循环
    
    #需要掌握
    
    name_list.insert(0,'handsome')
    print(name_list)    #插入
    
    name_list.pop(1)  # 删除  默认删除最后一个
    
    name_list.remove('nick')  #删除
    
    name_list.count('nick')   #计数个数 1.2.3...
    
    name_list.index('nick')   #获取索引
    
    name_list.clear()   # 清空
    
    name_list.copy()   # 复制
    
    l1 = [1]
    l2 = [2]           #合并列表
    l1.extend(l1)
    
    name_list.reverse()   #列表倒序
    
    name_list.sort()    # 使用sort列表元素必须是同类型的    列表内排列
    

    字典类型内置方法

    1.定义方式:{}内逗号隔开多个元素(任意数据类型)

    2.使用方法

    dic = {'a':1,'b':2}
    
    dic['a']    #按k索值
    dic['a'] = 3  # 按k更换值
    
    len(dic)    # 字典长度
    
    'a' in dic #True
    '1' in dic # False  成员运算
    
    del dic['a']    # 删除
    
    dic.pop('a')   #删除指定元素
    
    dic.keys()   #dict_keys(['a', 'b'])  获取键keys
    dic.values()    #dict_values([1, 2])   获取值values
    dic.items()  #dict_items([('a', 1), ('b', 2)]) 获取键值对items
    
    for k,v in dic.items():  # items可以换成keys()、values()
        print(k,v)     # 循环
    
    # 需要掌握
    
    dic.get('a')   # 1  获取值的个数
    
    #  dict1.update(dict2)    拼接字典
    
    dic = dict.fromkeys(['name', 'age', 'sex'], None)
    print(f"dic: {dic}")
    #  dic: {'name': None, 'age': None, 'sex': None}  快速生成一个字典
    
    

    集合类型内置方法

    s = {1,2,'a'}
    
    len(s)  #长度
    
    # 1 in s:  True  成员运算in not in
    
    #并集 s1|s2
    
    # 交集 s1&s2
    
    # 差集 s1-s2
    
    # 对称差集  s1^s2
    
    #  s1==s2   判断是否相等
    
    # s1>=s2  s1>s2  父集
    
    # s1<s2 s1<=s2   子集
    
    s.add(3)  # 增加元素
    
    s.remove(1)   #删除元素
    

    元组类型内置方法

    元组为不可变数据类型

    在()内可以有多个任意类型的值,逗号分隔元素

    使用方法和列表一样,不可更改的列表

    数据类型分类

    定义:{}内用逗号分隔开多个元素,每个元素必须是不可变类型。

    使用方法

    s = {1,2,'a'}
    
    len(s)  #长度
    
    # 1 in s:  True  成员运算in not in
    
    #并集 s1|s2
    
    # 交集 s1&s2
    
    # 差集 s1-s2
    
    # 对称差集  s1^s2
    
    #  s1==s2   判断是否相等
    
    # s1>=s2  s1>s2  父集
    
    # s1<s2 s1<=s2   子集
    
    s.add(3)  # 增加元素
    
    s.remove(1)   #删除元素
    

    一丶按存值个数区分

    存值个数 数据类型
    单个值 数字,字符串
    多个值(容器) 列表,元组,字典,集合

    二丶按可变不可变区分

    可变or不可变 数据类型
    可变 列表,字典,集合
    不可变 数字,字符串,元组

    三丶有序无序区分

    有序or无序 数据类型
    有序(可按索引取值) 字符串,列表,元组
    不可变 字典,集合

    四丶按访问类型区分

    访问类型 数据类型
    直接访问 数字
    顺序访问(序列类型) 字符串,列表,元组
    key值访问(映射类型) 字典
  • 相关阅读:
    Mysql模糊查询like效率,以及更高效的写法(转)
    补全数组缺失某种类型的数据方法
    php 判断两个数组是否相等
    query如何全选或不全选时,不操作已经禁用的checkbox
    css talbe中td溢出隐藏 div溢出隐藏
    MongoDb的安装
    PSR规范
    shell中各种括号的作用()、(())、[]、[[]]、{}
    mysql explain执行计划详解
    PHP "延迟静态绑定" 功能,static
  • 原文地址:https://www.cnblogs.com/shiqizz/p/11469208.html
Copyright © 2011-2022 走看看