当前位置:首页 > Python教程 > python技巧

Python3的基本数据类型

1、整型 int

             1
            #
             Python3中,所有的整型都是int类型
             2
            #
             1.int():将字符串转换为数字
             3 a = "123" 4 b = int(a)
 5# type():识别数据类型 6print(type(a), type(b))  # <class ‘str‘> <class ‘int‘> 7# 转成16进制 8 num = "b" 9 v = int(num, base=16)
10print(v)  # 111112# 2.bit_length():当前数字的二进制,至少用n位表示13 age = 5
14 v = age.bit_length()
15print(v)  # 3

 

2、字符串 str

              1
            #
             1.capitalize():将字符串首字母变成大写
              2 s = "admin"  3 v1 = s.capitalize()
  4print(v1)  # Admin  5  6# 2.casefold():将字符串字母变成小写  7 v2 = v1.casefold()
  8print(v2)  # admin  9 10# 3.expandtabs():断句20, 11 s = "usernametpasswordtemailnguixiangt123456tguixiang.126.comnguixiangt123456tguixiang.126.com" 12 v3 = s.expandtabs(20)
 13print(v3)
 14# username            password            email 15# guixiang            123456              guixiang.126.com 16# guixiang            123456              guixiang.126.com 17 18# 4.center():设置宽度,并将内容居中 19# 20表示总长度, 20# * 表示空白未知填充,一个字符,可有可无 21 v4 = v3.center(20, "*")
 22print(v4)  # *******ADMIN******** 23 24# 5.rjust():设置宽度,并将内容居左 25 v5 = v3.rjust(20, "*")
 26print(v5)  # ***************ADMIN 27 28# 6.ljust():设置宽度,并将内容居右 29 v6 = v3.ljust(20, "-")
 30print(v6)  # ADMIN--------------- 31 32# 7.count():去字符串寻找子序列出现的个数 33# 2表示起始位置开始查找,可有可无 34# 8表示结束位置,可有可无 35 s = "testtest" 36 v7 = s.count("st", 2, 8)
 37print(v7)  # 2 38 39# 8.endswith():以什么结尾,返回布尔值 40# startswith():以什么开始,返回布尔值 41 s = "testtest" 42 v8 = s.endswith("st")
 43print(v8)  # True 44 v8 = s.startswith("te")
 45print(v8)  # True 46 47# (重点)9.find():从开始往后找,找到第一个之后,获取其位置;没有则返回-1 48# 2表示起始位置开始查找,可有可无 49# 8表示结束位置,可有可无 50 s = "testtest" 51 v9 = s.find("st", 2, 8)
 52print(v9)  # 2 53 54# 10.format():格式化,将一个字符串中的占位符替换为指定的值 55 s = "i am {0},age {1}" 56 v10 = s.format("桂香", 20)
 57print(v10)  # i am 桂香,age 20 58 59# 11.format_map() 60 s = "i am {name},age {a}" 61 v11 = s.format_map({"name": "湘桂", "a": 20})
 62print(v11)  # i am 桂香,age 20 63 64# 12.isalnum():判断字符串中是否只包含 字母和数字 65 s = "123test" 66 v12 = s.isalnum()
 67print(v12)  # True 68 69# 13.isalpha():判断字符串中是否只包含 字母 70 s = "123test" 71 v13 = s.isalpha()
 72print(v13)  # False 73 74# 14.isdigit()、isdigit()、isnumeric():判断字符串中是否只包含 数字 75 s = "" 76 v14 = s.isdecimal()  # 十进制数字 77 v14 = s.isdigit()  # 十进制数字和特殊数字(如:②) 78 v14 = s.isnumeric()  # 十进制数字、特殊数字(如:②)和 中文数字(如:一) 79print(v14)  # True 80 81# 15.isidentifier():判断是否以 字母 或 _ 开头 82 s = "_123" 83 v15 = s.isidentifier()
 84print(v15)  # True 85 86# 16.isprintable():判断是否只包含 可显示的字符 87# t:制表符 88# n:换行符 89 s = "testtestt" 90 v16 = s.isprintable()
 91print(v16)  # False 92 93# 17.isspace():判断是否全是 空字符 94 s = "" 95 v17 = s.isspace()
 96print(v17)  # True 97 98# 18.istitle(): 判断是否只有所有的首字母都转成大写,其余的为小写 99 s = "One TWO Three"100 v18 = s.istitle()
101print(v18)  # False102103# 19.title(): 把所有的首字母都转成大写,其余的为小写104 s = "One TWO Three"105 v19 = s.title()
106print(v19)  # One Two Three107108# (重点)20.join():将字符串中的每一个元素按照指定分隔符进行拼接109 s = "你是风儿我是沙"110 v20 = "_".join(s)
111print(v20)  # 你_是_风_儿_我_是_沙112113# 21.islower():判断字符串是否都是小写114 s = "Admin"115 v21 = s.islower()
116print(v21)  # False117118# (重点)22.lower():将字符串转成小写119 s = "Admin"120 v22 = s.lower()
121print(v22)  # admin122123# 23.isupper():判断字符串是否都是大写124 v23 = s.isupper()
125print(v23)  # False126127# (重点)24.upper():将字符串字母变成大写128 v24 = s.upper()
129print(v24)  # ADMIN130131# 25.lstrip():去掉字符串前不可见字符,也可以去掉指定字符132 s = " test "133 v25 = s.lstrip()
134print(v25)  # test135136# 26.rstrip():去掉字符串后不可见字符,也可以去掉指定字符137 s = " test "138 v26 = s.rstrip()
139print(v26)  # test140141# (重点)27.strip():去掉字符串前后不可见字符,也可以去掉指定字符142 s = " test "143 v27 = s.strip()
144print(v27)  # test145146# 28.partition():指定分隔符,只能分3份147 s = "asfdjdsbdsff"148 v28 = s.partition("s")
149print(v28)  # (‘a‘, ‘s‘, ‘fdjdsbdsff‘)150151# (重点)29.split:指定分隔符,拿不到分隔符,默认找全部,也可以指定152 s = "asfdjdsbdsff"153 v29 = s.split("s", 2)
154print(v29)  # [‘a‘, ‘fdjd‘, ‘bdsff‘]155156# 30.splitlines():以换行符分隔;true、false表示是否保留换行符157 s = "asfdnjdsbndsff"158 v30 = s.splitlines(True)
159print(v30)  # [‘asfdn‘, ‘jdsbn‘, ‘dsff‘]160161# 31.swapcase():大小写转换162 s = "Admin"163 v31 = s.swapcase()
164print(v31)  # aDMIN165166# (重点)32.replace():指定字符串替换;可以指定替换几个,默认全部167 s = "testtest"168 v32 = s.replace("es", "bbb", 1)
169print(v32)  # tbbbttest170171# (重点)33.索引,下标,获取字符串中的某一个字符172 s = "test"173 v33 = s[0]
174print(v33)  # t175176# (重点)34.切片177 s = "test"178 v34 = s[0:-1]
179print(v34)  # tes180181# (重点)35.len():182# Python3:获取当前字符串中由几个字符组成183 s = "test"184 v35 = len(s)
185print(v35)  # 4186187# (重点)36.str():将int类型转成字符串类型188 s = 123
189 v36 = str(s)
190print(type(s), type(v36))  # <class ‘int‘> <class ‘str‘>191192# (重点)37.for循环193 s = "abcd"194for i in s:
195print(i)
196# a197# b198# c199# d200201# 帮助创建连续数字,也可以通过设置步长来指定不连续202# python3:循环迭代使用时,创建203# python2:立即创建204 v = range(0, 30, 5)
205for i in v:
206print(i)
207# 0208# 5209# 10210# 15211# 20212# 25213214for i in range(0, len("abcd")):
215print(i, s[i])
216# 0 a217# 1 b218# 2 c219# 3 d220221# (重点)38.222# 字符串一旦创建,不可修改223# 一旦修改或拼接,都会造成重新生成字符串

 

3、列表 list

              1
            #
             中括号括起来
              2
            #
             ,分割每个元素
              3
            #
             列表中的元素可以是 数字,字符串,布尔,列表....可以放任何东西
              4
            #
             (重点)1.索引取值
              5 li = [1, 2, 5, "湘桂", ["gg", "mm"]]
  6print(li[3])  # 湘桂  7print(li[3:5])  # [‘湘桂‘, [‘gg‘, ‘mm‘]]  8  9# (重点)2.for、while循环遍历 10for item in li:
 11print(item)
 12# 1 13# 2 14# 5 15# 湘桂 16# [‘gg‘, ‘mm‘] 17 18# (重点)3.列表元素可以被修改 19 li[3] = 4
 20print(li)  # [1, 2, 5, 4, [‘gg‘, ‘mm‘]] 21 22# 4.删除 23del li[2:5]
 24print(li)  # [1, 2] 25 26# 5.in 操作 27 v = 1 in li
 28print(v)  # True 29 v = "gg"in li
 30print(v)  # False 31 32# (重点)6.取值操作 33 li = [1, 2, 5, "湘桂", ["gg", "mm"]]
 34 v = li[4][1]
 35print(v)  # mm 36 37# 7.list():字符串转成列表,内部使用for循环;int不能 38 s = "assdsck" 39 new_li = list(s)
 40print(new_li)  # [‘a‘, ‘s‘, ‘s‘, ‘d‘, ‘s‘, ‘c‘, ‘k‘] 41 42# 8.列表转换成字符串,需要自己写for循环处理 43# 列表包含int和字符串 44 li = [12, 13, 15, "17", "test"]
 45 s = "" 46for i in li:
 47     s += str(i)
 48print(s)  # 12131517test 49# 列表只包含字符串,直接使用字符串的join方法 50 li = ["17", "test"]
 51 s = "".join(li)
 52print(s)  # 17test 53 54# (重点)9.append():在原li追加元素,不需要接收 55 li = [11, 22, 33, 44]
 56 v9 = li.append(55)
 57print(v9)  # None 58print(li)  # [11, 22, 33, 44, 55] 59 60# 10.clear():清空列表 61li.clear()
 62print(li)  # [] 63 64# 11.copy():拷贝,浅拷贝 65 li = [11, 22, 33, 44]
 66 v11 = li.copy()
 67print(v11)  # [11, 22, 33, 44] 68 69# 12.count():计算元素出现的次数 70 v12 = li.count(22)
 71print(v12)  # 1 72 73# (重点)13.extend():扩展原列表 74 li.extend([55, "test"])
 75print(li)  # [11, 22, 33, 44, 55, ‘test‘] 76 li.extend("test")
 77print(li)  # [11, 22, 33, 44, 55, ‘test‘, ‘t‘, ‘e‘, ‘s‘, ‘t‘] 78 79# 14.index():根据值获取当前值索引位置,左边优先 80 li = [11, 22, 33, 44]
 81 v14 = li.index(22)
 82print(v14)  # 1 83 84# (重点)15.insert():指定索引位置插入值 85 li.insert(0, 8)
 86print(li)  # [8, 11, 22, 33, 44] 87 88# 16.pop():指定索引删除某个值,并且获取删除的值,默认是删除最后一个 89 li = [11, 22, 33, 44]
 90 v16 = li.pop(2)
 91print(v16)  # 33 92print(li)  # [11, 22, 44] 93 94# 17.remove():指定删除列表中的值,左边优先 95 li = [11, 22, 33, 44]
 96 li.remove(11)
 97print(li)  # [22, 33, 44] 98 99# 18.reverse():将当前列表进行反转100 li = [11, 22, 33, 44]
101li.reverse()
102print(li)  # [44, 33, 22, 11]103104# 19.sort():列表的排序,默认升序;参数reverse=True表示降序105 li = [11, 44, 22, 33]
106 li.sort(reverse=True)
107print(li)  # [44, 33, 22, 11]

 

4、元组 tuple

             1
            #
             (重点)一级元素不能修改,不能删除,不能添加
             2 tu = (11, 22, "test", (11, 22), 11, 22, [11, 22],)
 3print(tu)  # (11, 22, ‘test‘, (11, 22), 11, 22, [‘11‘, ‘22‘]) 4 5# (重点)1.索引,切片 6 v1 = tu[1]
 7print(v1)  # 22 8 v1 = tu[0:3]
 9print(v1)  # (11, 22, ‘test‘)1011# (重点)2.可以for循环,可迭代对象12for i in tu:
13print(i)
14# 1115# 2216# test17# (11, 22)18# 1119# 2220# [‘11‘, ‘22‘]2122# 3.字符串,列表转成元组23 s = "asdacd"24 v3 = tuple(s)
25print(v3)  # (‘a‘, ‘s‘, ‘d‘, ‘a‘, ‘c‘, ‘d‘)26 li = [11, 22, 33, 44]
27 v3 = tuple(li)
28print(v3)  # (11, 22, 33, 44)2930# 4.元组转换成列表31 v4 = list(tu)
32print(v4)  # [11, 22, ‘test‘, (11, 22), 11, 22, [‘11‘, ‘22‘]]3334# 5.元组转字符串和列表转字符串同理3536# 6.指定索引获取元素37 tu = (11, 22, "test", (11, 22), 11, 22, [11, 22],)
38 v6 = tu[6][1]
39print(v6)  # 224041#  7.修改二级元素42 tu = (11, 22, "test", (11, 22), 11, 22, [(11, 22)],)
43 tu[6][0] = 123
44print(tu)  # (11, 22, ‘test‘, (11, 22), 11, 22, [123])4546# 8.count():计算元素出现的次数47 tu = (11, 22, 33, 44)
48 v8 = tu.count(33)
49print(v8)  # 15051# 9.index():根据值获取当前值索引位置,左边优先52 tu = (11, 22, 33, 44)
53 v9 = tu.index(11)
54print(v9)  # 0

 

5、字典 dict

             1
            #
             字典是无序的
             2 info = {
 3"k1": "v1",  # 键值对 4"k2": "v2" 5}
 6print(info)  # {‘k1‘: ‘v1‘, ‘k2‘: ‘v2‘} 7 8# 字典的key可以是:字符串,布尔值, 元组; value可以是任意值 9 info = {
10"name": "桂香",
11"age": 20,
12"sex": ["", ""],
13"addr": {
14"k1": (11, 22)
15    },
16     True: "10",
17     (1, 2, 3): "123"18}
19print(info)  # {‘name‘: ‘桂香‘, ‘age‘: 20, ‘sex‘: [‘男‘, ‘女‘], ‘addr‘: {‘k1‘: (11, 22)}, True: ‘10‘, (1, 2, 3): ‘123‘}2021# (重点)1.通过索引key获取指定元素value值22 v = info["name"]
23print(v)  # 桂香24 v = info["addr"]["k1"][0]
25print(v)  # 112627# 2.通过索引key删除元素28del info["addr"]
29print(info)  # {‘name‘: ‘桂香‘, ‘age‘: 20, ‘sex‘: [‘男‘, ‘女‘], True: ‘10‘, (1, 2, 3): ‘123‘}3031# (重点)3.for循环; keys()获取key,values()获取value,items()获取键值对,默认key32for k, v in info.items():
33print(k, v)
34# name 桂香35# age 2036# sex [‘男‘, ‘女‘]37# True 1038# (1, 2, 3) 1233940# 4.clear():清空字典4142# 5.copy():拷贝字典4344# 6.dict.fromkeys():根据序列创建字典,并指定统一的值45 v6 = dict.fromkeys(["k1","k2"],123)
46print(v6)   # {‘k1‘: 123, ‘k2‘: 123}4748# (重点)7.get():根据key获取值,若key不存在时,可以指定默认值(None)49 dic = {
50"k1": "v1",
51"k2": "v2"52}
53 v7 = dic.get("k3",1111)
54print(v7)   # 11115556# 8.pop():指定key删除,若key不存在,可以指定返回值57 v8 = dic.pop("k3",80)
58print(v8)   # 8059print(dic)  # {‘k1‘: ‘v1‘, ‘k2‘: ‘v2‘}6061# 9.popitem():随机删除一个key62 v9 = dic.popitem()
63print(v9)   # (‘k2‘, ‘v2‘)64print(dic)  # {‘k1‘: ‘v1‘}6566# 10.setdefault():设置值67# 已存在,不设置,获取当前key对应的值68# 已存在,设置,获取当前key对应的值69 dic = {
70"k1": "v1",
71"k2": "v2"72}
73 v10 = dic.setdefault("k3","v3")
74print(dic,v10)  # {‘k1‘: ‘v1‘, ‘k2‘: ‘v2‘, ‘k3‘: ‘v3‘} v37576# (重点)11.update():更新77 dic = {
78"k1": "v1",
79"k2": "v2"80}
81 dic.update({"k1":"1111","k3":123})
82print(dic)  # {‘k1‘: ‘1111‘, ‘k2‘: ‘v2‘, ‘k3‘: 123}83 dic.update(k1=123,k3=456)
84print(dic)  # {‘k1‘: 123, ‘k2‘: ‘v2‘, ‘k3‘: 456}

 

6、布尔 bool

            1
            #
             0 1
            2
            #
             False:None "" () [] {} 0
        

原文:https://www.cnblogs.com/lihai1020/p/9736799.html


【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!

相关教程推荐

其他课程推荐