1.概要
今天跟大家分享的是数据类型,数据类型在Python中的重要程度就好比我们汉语中的拼音一样重要。
2.数据类型
1.整形
-
整形就像是数学中的1、2、3一样,用int来表示。
a = 1 # 这就是一个整形 print(type(a)) # 可以用type方法来检测数据类型
2.布尔类型
- 布尔值就是用来表示真假的一种数据类型,用bool来表示,只有True和False
3.字符串
-
字符串就像汉语中的汉字一样,用str来表示,字符串是写代码中最常见的,python内存中的字符串是按照:unicode 编码存储。对于字符串是不可变
-
字符串中有许多的方法,这里主要说一些常用的方法
-
大写: upper
v = 'ALEX' v1 = v.upper() print(v1) v2 = v.isupper() # 判断是否全部是大写 print(v2)
-
小写:lower
v = 'alex' v1 = v.lower() print(v1) v2 = v.islower() # 判断是否全部是小写 print(v2) ############ 了解即可 v = 'ß' # 将字符串变小写(更牛逼) v1 = v.casefold() # 对于其他国家的语言也可以进行小写转化 print(v1) # ss v2 = v.lower() print(v2)
-
判断是否是数字: isdecimal
v = '1' # v = '二' # v = '②' v1 = v.isdigit() # '1'-> True; '二'-> False; '②' --> True v2 = v.isdecimal() # '1'-> True; '二'-> False; '②' --> False v3 = v.isnumeric() # '1'-> True; '二'-> True; '②' --> True print(v1,v2,v3) # 以后推荐用 isdecimal 判断是否是 10进制的数。 # ############## 应用 ############## v = ['alex','eric','tony'] for i in v: print(i) num = input('请输入序号:') if num.isdecimal(): num = int(num) print(v[num]) else: print('你输入的不是数字')
-
去空白+\t+\n + 指定字符串:strip
v1 = "alex " print(v1.strip()) v2 = "alex\t" print(v2.strip()) v3 = "alex\n" print(v3.strip()) v1 = "alexa" print(v1.strip('al'))
-
替换: replace
name = 'alex' new_name = name.replace('a','T') print(new_name)
-
开头 : starswith
name = 'alex' new_name = name.startswith('a') print(new_name)
-
结尾 :endswith
name = 'alex' new_name = name.endswith('x') print(new_name)
-
encode:把字符串转换成二进制
name = '你好' new_name = name.encode('utf-8') print(new_name)
-
format:字符串格式化
v1 = "我叫{0},年龄{1}".format('郭睿杰',23) print(v1)
-
join:加入
name = 'alex' new_name = "|".join(name) print(new_name)
-
split :分割
name = 'alex' new_name = name.split("l") print(new_name)
-
其他【可选】
-
4.列表
-
列表就像是一个容器一样,它里面可以存放许多的数据类型,用list来表示。而且里面的内容是可以修改的
-
列表的常用方法:
-
追加:append
v1 = [1,2,3,4] v1.append(5) print(v1)
-
插入:insert
v1 = [1,2,3,4] v1.insert(0,1) print(v1)
-
删除:remove
v1 = [1,2,3,4] v2 = (5,6,7,8) v1.remove(1) print(v1)
-
删除:pop
v1 = [1,2,3,4] v2 = (5,6,7,8) v1.pop(1) print(v1)
-
删除:clear
v1 = [1,2,3,4] v2 = (5,6,7,8) v1.clear() print(v1)
-
把另一个列表(元组)里的元素添加到第一个列表里:extend
v1 = [1,2,3,4] v2 = (5,6,7,8) v1.extend(v2) print(v1)
-
反转:reverse
v1 = [1,2,3,4] v2 = (5,6,7,8) v1.reverse() print(v1)
-
排序:sort
v1 = [1,2,3,4] v2 = (5,6,7,8) v1.sort(reverse=False) print(v1)
-
5 元组
- 同样是一个容器,但是里面的内容是不可以修改的。用tuple来表示
- 元组的一般方法,由于它不可修改的性质,它所具有的方法也是一些基础的方法:
- 取长度:len
- 索引
- 切片
- 步长
6.字典
-
字典同样是一个容器型的数据类型,用dict表示,它和列表和元组不同之处就在于,它有自己的键值对,也就是键和值,同样的字典的键也是不可以修改的,但是值是可以修改的
-
字典的常用方法:
-
取所有的键:keys
v1 = {'k1':1,'k2':2} for i in v1.keys(): print(i)
-
取所有的值:values
v1 = {'k1':1,'k2':2} for i in v1.values(): print(i)
-
取所有的键值对:items
v1 = {'k1':1,'k2':2} for a,b in v1.items(): print(a,b)
-
取值:get
v1 = {'k1':1,'k2':2} x = v1.get('k1') print(x)
-
删除:pop
v1 = {'k1':1,'k2':2} v1.pop('k1') print(v1)
-
更新:update
v1 = {'k1':1,'k2':2} v1.update({'k3':3}) print(v1)
-
有序字典
from collections import OrderedDict info = OrderedDict() info['k1'] = 123 info['k2'] = 456 print(info.keys()) print(info.values()) print(info.items())
-
7.集合
-
集合作为容器类型的数据类型,它的特点是不重复。用set来表示
-
集合的常用方法
-
添加:add
v1 = {1,2,3,4} v1.add(666) print(v1)
-
删除:discard
v1 = {1,2,3,4} v1.discard(1) print(v1)
-
批量添加:update
v1 = {1,2,3,4} v1.update({7},{8},{9}) print(v1)
-
取交集:intersection
v1 = {1,2,3,4} v2 = {3,4,5,6} x = v1.intersection(v2) print(x)
-
取并集:union
v1 = {1,2,3,4} v2 = {3,4,5,6} x = v1.union(v2) print(x)
-
取差集:difference
v1 = {1,2,3,4} v2 = {3,4,5,6} x = v1.difference(v2) print(x)
-
8.None
- 这个数据类型就如同表面意思,就是空的意思。
9.总结
- 今天给大家分享了一些我们常用的数据类型,以及他们的一些常用方法,欢迎来讨论!