python数据类型概述

Posted 月半王令

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python数据类型概述相关的知识,希望对你有一定的参考价值。

python数据类型分类:

1、int 整型

.bit_length()  #数字转换成二进制长度

 

2、str 字符串

 1)索引

       索引默认从左到右,下标从0开始,从右到左,下标从-1开始 

    2)切片

        语法: s[开始位置:结束位置:步长]

        特点:顾头不顾尾

        步长正负表示了起止的方向和内容打印的方向(默认正数是从左到右读和取)

    3)常用操作:

    #字符串是不可变的,任何操作对原字符串无影响

    #所以有返回值

        s.capitalize() 首字母大写 

        s.title() 被特殊字符隔开的首字母大写(中文和空格也属于特殊字符)

        s.lower() 

        s.upper()

        s.strip() 去空格 只对首尾有效 

            #s.strip("指定内容") 去除字符串前后指定内容

            #s.lstrip()  

            #s.rstrip()

        s.split("指定元素") 切割

            #切割之后是列表,列表里面装的是字符串

            #如果切割在字符串左右两端,一定会生成空字符串

        s.replace() 替换

            #s.replace(" ","") 区别s.strip()

            #注:空格和空字符串还是有区别的。

        len() 计算字符串长度,不需要点操作

        s.startswith(\'a\') 判断是否以a开头

        s.endswith(\'b\')

        s.find("木木"26)指定范围查找

  4格式化输出 

   %s:

            s="我叫%s,今年%d岁了,喜欢%s" % (\'alex\',20,\'羽毛球\')

        位置格式化:

            s="我叫{},今年{}岁了,喜欢{}".format(\'alex\',20,\'羽毛球\')

        指定位置:

            s="我叫{0},今年{2}岁了,喜欢{1}".format(\'alex\',\'羽毛球\'20)

        指定关键字:

            s="我叫{name},今年{age}岁了,喜{hobby}".format(name=\'alex\',age=20,hobby=\'羽毛球\')

   5)迭代:

  str01 = \'hello python\'

        for i in str01:

            print(i)

            print(type(i))  

 

 

3、list 列表

 #列表可变,直接对原列表操作

    1)增加:

        #返回值都是None

        list1.append() 向列表中添加一个元素,至末尾

        list1.insert(1,\'周周\') 指定位置添加一个元素 #少用,耗性能

        list1.extend() 迭代添加

    2)删除:

        #有返回值

        list1.pop() 输出最后一个,返回值是删除的元素

        list1.pop(1) 根据索引删除 #少用,耗性能

        list1.remove(\'元素\') 指定元素删除,无返回值

        del list1 删除整个列表 

            #del list1[:] 切片删除得到的是空列表

        list1.clear() 清除,得到空列表

    3)修改:

        通过索引修改:list1[0]=\'太白\'

        切片修改:list1[0:2]=\'马花花\' #先删除再迭代添加

    4)常用操作:

        list1.sort() 排序,默认升序 

        list1.sort(reverse=True) 倒序

        list1.reverse() 翻转

        len() 长度

    5)列表嵌套

    6)迭代

  list1 = [1,2,3,\'zxl\',[4,5]]

        for i in list1:

            print(i) #遍历各元素

            print(type(i)) #取决各元素的数据类型

 

 

4、元组

    #只读列表,不可变

    1)元组中若只有一个元素,要加一个逗号,否则是int

    2)元组不可变,指的是子元素类型是不可变的数据类型,若子元素是可变的数据类型那么也是可以修改的

    3tuple() 表空元组

    4)迭代

  tuple1 = (1,2,3,[4,5])

        for c in tuple1:

            print(c)

 

5、字典

   1{}括起来的键值对,无序的

       key不可变,可哈希;可作为key的数据类型:str、 int、 bool、 tuple 列表不可作为key

    2)增加:

        dic["果果"]=\'汪峰\'  不存在走添加,存在走修改

        dic.setdefault("果果",\'老外\') 不存在走添加,存在不保存走查询

    3)删除:

        dic.pop(\'果果\') 指定key删

        dic.popitem() 随机删一个

        del dic[\'果果\'] 指定key删

    4)修改:

        dic1.update(dic2) 将dic2更新到dic1中,存在走修改,不存在走增加

        dic[\'1\']=dic[\'1\'] + 20 通过key修改

    5)查:

        dic.get(\'1\',\'503\') 根据key查,若不存在返回指定值

        dic.setdefault(\'昆凌\',\'周周\') 没有走新增,已存在走查询,返回对应的value

    6)补充:

        dic.keys() 获取所有key

        dic.values()获取所有value

        dic.items()获取所有键值对

        for k,v in dic.items():

            print(k,v)--------------获取到的是元组类型

        for i in dic1:

            print(i)-------获取key

            print(dic[i])-----获取value

 

补充:

1、range

 #同切片,顾头不顾尾

    for i in range(10):

        print(i) # 0,1,2,3,4,5,6,7,8,9

    for i in range(10,1,-1):

        prnt(i) #10 9 8 7 6 5 4 3 2 

    for i in range(len(list)):

        print(i) #获取列表的索引 (对字符串,元组,字典,列表都适用

 

2、jion()

   s = \'abc\'

        s1=s.join("非常可乐") #把s插入到join里的字符串

        print(s1) # 非abc常abc可abc乐

 

3、循环里做删除,不可以直接删

比如把主播薪资低于平均薪资的过滤掉

 

4、深浅拷贝

列表进行赋值操作,实际上引用内存地址进行赋值

        list2= list1

        list2.append("大同")

        print(list1) #list1内容也被修改

浅拷贝: .copy() #适用于各元素不可变场景,只拷贝第一层

        list2=list1.copy()  #list1 和list2指向的不是同一对象

        list2=list1[:]   #切片赋值等价于浅拷贝

深拷贝:  #适用所有类型,完全拷贝

        list1 = [\'超人\',\'七龙珠\'[\'大力\',\'二力\']]

        import copy 

        list2 = copy.deepcopy(list1)

        list1.append("大洋")

        print(list1,list2)

 

 

以上是关于python数据类型概述的主要内容,如果未能解决你的问题,请参考以下文章

Python概述环境准备Python起步 数据类型概述

Python基本数据类型set方法概述

Python 基础 2022 最新第二课 变量 & 数据类型

Python 基础 2022 最新第二课 变量 & 数据类型

Python 基础 2022 最新第二课 变量 & 数据类型

[Python3] 变量类型概述 & 数字类型详叙