首页 > 代码库 > Python 基础3:基本的数据类型
Python 基础3:基本的数据类型
基本的数据类型
一、int,整形
a、创建方式
n1 = 123
n2 = int (123)
b、int内部优化
默认-5~257的数共用一份地址
===》 id(对象内存地址) = id(对象或变量名)
c、长度限制
32 -2**31~2**31-1
64 -2**63~2**63-1
在py3里面没有限制
二、str,字符串
a、创建方式
s1 = “alex”
s1 = str(“alex”)
b、特有功能
sl = "alex"
1、两端去空格:s1.strip
2、以。。。开头:s1.startswith()
3、找子序列“12”,“h”:s1.find()
4、将字符串中的某子序列替换成指定的值:s1.replace()
5、变大写:s1.upper()
6、是。。。吗:s1.isalphe()
7、join将什么以什么的形式连接起来:
li = ["alex",‘sb‘]
l1 = "_".join(li)
l1对应的值 alex_sb
c、公共功能
索引:只能取一个元素
切片:取多个元素
len:计算元素长度
3.5里面是用字符来表示的
2.7里面是字节
for:
3.5里面是用字符来表示的
编码、for:
name = "李璐"
for i in name:
print(i)
bytes_list = (bytes(i,encoding=‘utf-8‘))
print(bytes_list)
for b in bytes_list:
1、3.5 for循环时候,循环的每一个元素是“字符”
2、字符==》字节:
bytes_list = bytes("字符串",encoding="utf-8")
utf-8 =》 3个字节
gbf =》 2个字节
print(bytes_list)#默认每一个字节都是16进制表示
for b in bytes_list:
print(b)#默认没一个字节都是10进制表示
3、10进制的数字==》2进制
len
id
bin(加一个10进制的数字,变成2进制)
d、字节和字符串的相互转换:bytes和str
a = "李璐" #将字符串转换成字节 b1 = bytes(a,encoding="utf-8") print(b1) b2 = bytes(a,encoding=‘gbk‘) print(b2) #将字节转换成字符串 newal = str(b1,encoding="utf-8") print(newal) newa2 = str(b2,encoding="gbk") print(newa2)
三、list,列表
a、创建方式
li = [11,22,33,44]
li = list()
li = list([11,22,33,44])
b、转换
1、字符串转换成列表
s1 = "李璐" #for,字符==>可迭代 li = list(s1)#for循环,将循环的每一个元素,当做列表的元素 #["李""璐"] print(li) #结果:[‘李‘, ‘璐‘]
2、元组转换成列表
# 元组转换成列表 t2 = ("acker", "seven", "laolanhai") l2 = list(t2) print(l2) #结果:[‘acker‘, ‘seven‘, ‘laolanhai‘]
3、字典转换成列表
# 字典转换成列表 dic = {"k1": "alex", "k2": "seven"} l3 = list(dic.items()) print(l3) #结果:[(‘k1‘, ‘alex‘), (‘k2‘, ‘seven‘)] # 字典由key和values组成键值对 # 字符串,元组,字典==>列表
c、特有功能
li = [111,22,3]
1、追加:li.append()
2、清除:li.clear()
3、翻转,字节内部元素翻转:li.reverse()
4、向指定位置插入指定元素:li.insert(1,"x")
5、去空格:li.strip()
6、
#扩展字节,用另外一个可迭代的对象,扩充到字节内部 # str,list,dic,tuple li = [111,22,3] s = "李璐" li.extend(s) print(li) #结果:[111, 22, 3, ‘李‘, ‘璐‘]
d、公共功能
li = ["alex","aric","sevev","123"]
索引:li[2]
切片:li[2:3]:::***原来是什么类型取的就是什么类型,列表切片取的也是列表***
for
len
del#删除
索引嵌套例子:取出第2个“123”:
li = ["alex", 123, {"k1": "v1", "k2": {"vv": (11, 22, 123), "ii": 456}}]
li[2] -->{"k1": "v1", "k2": {"vv": (11, 22, 123), "ii": 456}}
li[2][‘k2‘] -->{"vv": (11, 22, 123), "ii": 456}
li[2][‘k2‘]["vv"] -->(11, 22, 123)
li[2][‘k2‘]["vv"][2]-->123
四、元组
a、创建和转换
t = (11,22,33)
t = tuple((11,22,33))
t = tuple([])#字符串,列表,字典
#元组转换成列表 t2 = ("acker","seven","laolanhai") l2 = list(t2) print(l2) #结果:[‘acker‘, ‘seven‘, ‘laolanhai‘]
b、特有方法
#元组里面添加内容 #tuple t = (11,22,["alex",{"k1":"v1"}]) t[2][1][‘k2‘] = 123 print(t) #结果:(11, 22, [‘alex‘, {‘k1‘: ‘v1‘, ‘k2‘: 123}]) t[2][1].update({‘k3‘:123}) print(t) #结果:(11, 22, [‘alex‘, {‘k1‘: ‘v1‘, ‘k2‘: 123, ‘k3‘: 123}])
count
index
c、嵌套(获取元素)
t = (11, 22, ["alex", {"k1": "v1"}]) l1 = t[2][1]["k1"] print(l1) #结果:v1
d、元组,特性:
儿子不能被修改
e、整理:
一般字符串,执行一个功能,生成一个新内容,原来内容不变list,tuple,dict,
执行一个功能,自身进行变化
五、字典
a、创建
a = {"k1":123}
a = dict()
#字典转换成列表 dic = {"k1":"alex","k2":"seven"} l3 = list(dic.items()) print(l3) #结果:[(‘k1‘, ‘alex‘), (‘k2‘, ‘seven‘)] #字典由key和values组成键值对 #字符串,元组,字典==>列表
b、enumerate的运用
将列表转换成字典{key:10递加,value:列表里的元素}
li = [11, 22, 33] new_dict = dict(enumerate(li,10))#enumerate可以自动添加一列KEY,形成字典 print(new_dict) #结果:{10: 11, 11: 22, 12: 33}
c、字典里面添加内容:
#字典里面加内容 dic = {"k1":"v1"} #方法1 # dic.update({‘k2‘:123}) # print(dic) #方法2 dic[‘k2‘] = 123 print(dic) #结果:{‘k1‘: ‘v1‘, ‘k2‘: 123}
#字典添加的补充简便方法 d = {"k1":‘v1‘} # d.update({‘k2‘:123}) d[‘k2‘] = 123#如果换成:d[‘k1‘] = 123是可以把v1更新 print(d) #结果:{‘k1‘: ‘v1‘, ‘k2‘: 123}
d、fromkeys的运用
#如何让k1,k2,默认值为alex dic = {‘k1‘:123,‘k2‘:456,‘k4‘:111} n = dic.fromkeys([‘k1‘,‘k2‘],‘alex‘) print(n) #结果:{‘k1‘: ‘alex‘, ‘k2‘: ‘alex‘}
Python 基础3:基本的数据类型