• python所有数据类型及操作(python3入门)


    一、数据类型:

    1.数字类型—(1)整形 , (2) 浮点型

    2.字符串 

    3.列表

    4.元组

    5.字典

    6.集合

    7.bytes

    二、数据类型的操作

    1.数字(整形和浮点型)

    #整形:表示年龄,身份证好吗,qq号等数字
    age = 18    # 本质age = int(10)
    #浮点型:表示薪酬,身高,体重,等小数 weight = 120.2 # 本质weight = float(120.0)

    2.字符串

    #字符串:表示名字,变量名,性别,等描述状态的信息
    #字符串是不可变类型
    
    #!!python3中字符串有两种类型:
        #1 str是unicode编码标准
        #2 bytes是GBK编码标准
    
    #!!python2中字符串有两种类型:
        #1 str是GBK编码标准
        #2 u''是unicode编码标准
    
    
    username = 'peter'
    age = '18'
    weight = '60kg'
    say = 'hello world hello world'
    example1 = ' x x x x '
    example2 = '@#!ddd#$¥¥¥!!@#@#!'
    example3 = 'aaabbbccc'
    example4 = 'my name is {},i am {} years old,i am a {}!'
    li1 = ['a','c','dd','bbb']
    
    #基本操作
    
    #1.''.count()是统计指定字符在该字符串中的合计数量
    print(username.count('e'))  #统计字符e 在字符串uesername中的数量   #返回值2
    print(username.count('e',3,-1)) #统计字符串username里的索引3~最后1位中的字符e的数量    #返回值1
    
    #2.''.center()是将指定字符串居中并在他左右以某个自定义的字符进行填充
    print(username.center(40,'='))  #将字符串username以居中的形式,并且这一行中其他空位以字符'='填充,合计40个字符
    
    #3.''.isdigit()是判断指定字符串是否位纯数字
    print(username.isdigit())   #返回值False
    print(age.isdigit())    #返回True
    print(weight.isdigit()) #返回值False
    
    #4.''.split()是将该指定字符串以某个自定义字符进行分离,并先去除那个自定义字符后重新组成一个新列表《.split()默认是包含空格》
    print(username.split('t'))
    print(say.split(' '))
    print(say.split(' ',maxsplit=1))    #maxsplit为分离几次,不指定的话默认=-1,全部分离
    print(say.split(' ',maxsplit=2))
    print(say.split(' ',maxsplit=-1))
    
    #5.''.strip()是移除指定字符串左右两边的你自定义的字符,先从左往右开始移除自定义字符,直至遇到第一个不是自定义的字符后,
    # 再从右往左重复之前操作
    print(example1.strip()) #默认移除空格
    print(example1.strip(' '))  #移除自定义的字符为空格
    print(example2.strip('@#!'))    #移除自定义的字符为'@#!'
    
    #6.''.replace()是将指定的字符串中你自定义的字符替换成另一个字符(可以指定替换几次)并生成一个新的字符串(原来的字符串是不可以改变的)
    print(example3.replace('a','q',2))  #将example3中的字符a 从左往右替换成q,重复两次
    print(example3.replace('a','q'))    #将example3中的字符a 从左往右替换成q,默认全部替换
    
    #7.''.format是在指定字符串中,{}格式化输出为后面的字符串
    print(example4.format('a','b','c'))
    print('my name is {c},i am {b} years old,{c} i am {a}!'.format(b=age,c='exec',a=weight))
    
    #8.''.index()是在指定字符串中找到自定义的字符在该字符串中的索引位置,索引以0开始记数,如0,1,2,3,4,5。。。
    print('peter'.index('t'))
    
    #9.''.lower()是将指定字符串全部输出为小写
    print('PETeR'.lower())
    
    #10.''.upper()是将指定字符串所有字符全部输入为大写
    print('pETeR'.upper())
    
    #11.''.endswith()是判断指定字符串是以自定义的字符结尾(区分大小写),有True和False的输出
    print('peter'.endswith('r'))
    print('peteR'.endswith('r'))
    print('peter'.endswith('d'))
    
    #12.''.startswith是判断指定字符串是否以该自定义字符开头的,同时可以指定开始和结束的索引位置
    print('peter'.startswith('p',2,4))
    print('peter'.startswith('p'))
    
    #13.''.title()是将指定字符串中的单词的首字母变成大写
    print('peter is a boy'.title())
    
    #14.''.join()是将指定字符以分隔符的形式进行区分列表中的元素
    a1 = '|'.join(li1)
    a2 = ','.join(li1)
    a3 = ''.join(li1)
    print(a1)
    print(a2)
    print(a3)
    
    #15.''.capitalize()是将指定字符串的第一个英文大写
    print('peta is'.capitalize())
    
    #16.去除左边的字符,默认去除空格
    print(' pet er '.rstrip())
    print(' pet er '.lstrip())
    
    #17.将	替换成空格,可以指定几个字符,指定的字符包括空格+空格后的字符个数
    print('uuu	aaa'.expandtabs(9))
    
    #18. 同lower(),lower() 方法只对ASCII编码,对于其他语言(非汉语或英文)中把大写转换为小写的情况只能用 casefold() 方法
    print(''.casefold())
    
    #19.''.isalnum()是指判断指定字符串中是否有空格,如果有返回false,如果有至少一个字符或者数字则返回true
    print(''.isalnum())
    print('a b c'.isalnum())
    print('a'.isalnum())
    print('1'.isalnum())
    print('1a3'.isalnum())
    
    #20.''.isalpha()判断指定字符串中是否只有字母组成,如果是返回True,如果包含数字/空格则返回false
    print('ddd'.isalpha())
    print('ddd d'.isalpha())
    print('1a'.isalpha())
    print('a 1'.isalpha())
    print(' '.isalpha())
    
    #21.''.isdecimal() 方法检查字符串是否只包含十进制字符,如是返回true,如果不是则返回false。这种方法只存在于unicode对象。
    b1 = u'aaa111'
    b2 = u'1111'
    print(b1.isdecimal())
    print(b2.isdecimal())
    
    #22.''.isdentifier()判断是否是合法标识符
    print('bb'.isidentifier())
    print(''.isidentifier())
    
    #23。
    print('bb'.islower())
    print('Ac'.islower())
    
    #24.''.isnumeric()检测字符串是否只由数字组成。这种方法是只针对unicode对象(主要还是用isdigit)
    print('bb'.isnumeric())
    print('11'.isnumeric())
    print('1a '.isnumeric())
    print('a1 '.isnumeric())
    
    #25。''。isprintable()如果存在不可见的(如	,
    )则返回false,反之则为true
    print('b1'.isprintable())
    print(' d d'.isprintable())
    print('a
    '.isprintable())
    print('dd	'.isprintable())
    
    #26.判断是否全部为空格
    print(' '.isspace())
    
    #27.检查单词的首字母是否为大写且其他字母都为小写,返回true, 否则返回false
    print('Eaa Ddd AA'.istitle())
    print('Eaa Ddd Aa1'.istitle())
    
    #28.判断字符串是否全部为大写,真返回true,否则返回false
    print('bb'.isupper())
    print('Fa'.isupper())
    print('AA'.isupper())
    
    #29.
    # print('bb'.find())
    # print('bb'.maketrans())
    
    #30.左对齐和有对齐,同center()的用法
    print('bb'.rjust(10,'='))
    print('bb'.ljust(10,'='))
    
    #31.编码暂缺
    # print('bb'.encode())
    
    #32.以某一个字符进行依次分割
    print('bb aaa'.partition(' '))
    print('acdcgcx'.partition('c'))
    
    #33.互换大小写字母
    print('bbA Asd'.swapcase())
    
    #34暂缺
    # print('bb'.translate())
    
    #35.用0 来填充,并且右对齐
    print('bb'.zfill(10))
    字符串及编码类型

    3.列表

    #列表:表示可以存放多个数据
    
    li1 = ['a','b','c',10,'a','d','e']
    
    #1.指定列表的某一个元素的索引位置查找
    print(li1.index('c'))
    print(li1.index('a',1,5))   #指定某一段中查找字符的索引位置
    
    #2.在指定列表中查找字符的数量合计
    print(li1.count('a'))
    
    #3.在指定列表中去除某一个索引位置的元素,并返回这个取出的值
    print(li1.pop(1))
    
    #4.在指定列表的尾部插入一个新元素
    print(li1.append('test'))
    
    #5.将指定列表中所有元素从最后一位至第一位 重新排列替换掉指定列表
    li1.reverse()
    
    #6.移除指定列表中的某一个元素
    li1.remove('e')
    
    #7.复制指定列表并生成一个新列表
    li1_copy = li1.copy()
    print(id(li1))
    print(id(li1_copy))
    
    #8.在指定列表某一个指定的索引前面插入新的元素
    print(li1.insert(0,'ttt'))
    
    #9.用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
    li1_ext = [1,3,4,5,'a']
    print(li1.extend(li1_ext))
    
    #10.对指定列表进行按序排列
    alist = [10,5,2,6,3,23]
    alist.sort()    #升序排列
    
    #11.清除指定列表中所有元素
    print(alist.clear())
    print(alist)
    View Code

    4.元组

    #元组:存多个值,对比列表来说,元组不可变,不能对元组中的元素进行修改,主要是用来读
    a = ('a','c','d','123','a')
    print(type(a))
    
    #1.count()同列表,同字符串的用法
    print(a.count('a'))
    
    #2.index()查找指定字符在该元组中的索引
    print(a.index('a'))

    5.字典

    dic1 = {
        'k1':1,
        'k2':2,
        'k3':'acc'
    }
    
    #1.copy()复制当前字典,到新的变量中
    new_dic = dic1.copy()
    print(new_dic)
    
    #2.pop()在指定字典中提取指定key:value,并返回value
    print(dic1.pop('k1'))
    
    #3.get()是获取指定字典中自定义的key,返回对应的value
    print(dic1.get('k2'))
    
    #4.keys()获取指定字典中的所有key
    print(dic1.keys())
    
    #5.values()返回指定字典中的所有value
    print(dic1.values())
    
    #6.setdefault()是在指定字典中,新增该字典没有的key:value,如果新增的key已经在字典中存在,则指定字典没有发生变化,
    #若指定字典中没有新增的key,则以新的key:value形式加入指定字典(如没有指定value,则填入None)
    dic1.setdefault('k2',4)
    dic1.setdefault('k4',1111)
    dic1.setdefault('k5')
    print(dic1)
    
    #7.fromkeys()将指定列表中的所有元素作为key,然后与关键字进行配对后放入空字典
    li1 = ['a',1,'b',2,'c',3]
    li1_dic  = {}.fromkeys(li1,'hello')
    li1_dic  = {}.fromkeys(li1,None)
    
    #8.update()在指定字典中将更新的key:value更新到字典中,如指定字典中已有该key值,则会被替换成新的value,若没有,则新增key:value
    dic8 = {'k1':12,'k2':31}
    dic8.update({'k3':111})
    dic8.update({'k1':2222})
    dic8.update({'k4':414141})
    print(dic8)
    
    #9.clear()清空该字典
    dic1.clear()
    View Code

    6.集合

    # 集合的主要作用就是去重
    #定义:集合可以包含多个元素,用逗号分割
        #集合中的元素遵循三个原则:
        #1 每个元素是不可变类型(可hash,可作为字典的key)
        #2 没有重复的元素
        #3 无序
    
    #例:
    x1 = ['a','b']
    # x2 = {['a','b'],'c'}
    # print(x2)   #语法报错,无法使用可变类型作为集合中的元素
    # print(set(x1))
    
    a = {'a','b','c'}
    b = {'b',1,'d'}
    c = {'a','b'}
    
    # | 合集
    print(a|b)
    
    # & 交集
    print(a&b)
    
    # - 差集
    print(a-b)
    print(b-a)
    
    # ^ 对称差集
    print(a^b)
    
    # ==
    print(a==b) #输出false
    
    # >,>= 父集
    print(a>c)  #返回True
    
    # <,<= 子集
    print(c<a)  #返回True
    View Code

     7.bytes

    待补充

  • 相关阅读:
    django 如何重用app
    vim常用命令
    linux find grep
    linux su su-的区别
    linux定时任务crontab
    linux shell的单行多行注释
    python字符串的截取,查找
    gdb调试
    python字符转化
    python读写文件
  • 原文地址:https://www.cnblogs.com/lich1x/p/9911591.html
Copyright © 2020-2023  润新知