栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python中复杂数据的应用

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python中复杂数据的应用

目录

一、list和tuple的区别

二、python中的序列

三、list中所有方法的使用

四、将元组和列表转换成字典

五、dict中所有方法的使用

六、list或dict浅拷贝


一、list和tuple的区别

两者都属于序列,可以储存不同种类的数据类型,一般来说list序列是可变的,可给其中的元素赋值或者扩充序列,而tuple是不可变的,无法对其元素赋值扩充元素等,但如果tuple序列中包含list这时tuple也为可以改变了

tuple_var = (1, [1,2], "1")
print(tuple_var,type(tuple_var))
(1, [1, 2], '1') 

二、python中的序列

1、元组(tuple)

元组的元素不能修改,但是可以对整个元组进行删除和组合。 元组是用小括号进行包容,元素之间通过逗号。

tuple_data = ("1", [], 1)
print(tuple_data,type(tuple_data))
('1', [], 1) 

2、字节(bytes)

python中以字节为单位来处理,用b‘’来赋值创建

bytes_var = b'1'
print(bytes_var,type(bytes_var))
b'1' 

3字符串(str)

一般用‘’或“”来表示,创建字符串只需要为变量分配一个值即可

str_var = "hello"
print(str_var)

4、列表(list)

list中元素是可以修改的,也可以扩充元素,用[ ]定义,元素用逗号隔开

list_data = [1, 2, 3]
print(list_data,type(list_data))
[1, 2, 3] 

三、list中所有方法的使用

1、 list.append( )  

在末尾追加一个元素

list = [1, 2, 3, 4, 5, 6]
list.append(7)
print(list)
[1, 2, 3, 4, 5, 6, 7]

2、list.clear()

清除

list = [1, 2, 3, 4, 5, 6]
list.clear()
print(list)
[]

3、list.copy()

复制

list_var = [1, 5, 4, 5]
list_data = list_var.copy()
print(list_var, list_data)
print(id(list_var))
print(id(list_data))
[1, 5, 4, 5] [1, 5, 4, 5]

4、list. count()

一个元素出现的次数

list_var = [1, 5, 4, 5]
list_var.count(5)
print(list_var.count(5))
2

5、list.extend()

将其他元素增加到数列

list_data = [1, 2, 3]
list_data.extend("5")
print(list_data)
[1, 2, 3, '5']

6、list.index()

检测第一个出现的索引,即在序列中下标的位置

list_data = [1, 2, 3]
list_data.index(1)
print(list_data.index(1))
0

7、 list. insert()

插入到指定位置(下标位置,插入值)

list_data = [1, 2, 3]
list_data.insert(3,4)
print(list_data)
[1, 2, 3, 4]

8、list.pop()

删除并返回(下标位置为删除值)

list_data = [1, 2, 3]
list_data.pop(2)
print(list_data)
[1, 2]

9、list.remove()

删除(如果有一样的值,只能删除第一个)

list_data = [1, 1, 2, 3]
list_data.remove(1)
print(list_data)
[1, 2, 3]

10、  list.reverse()

将数列倒置

list_data = [1, 2, 3]
list_data.reverse()
print(list_data)
[1, 2, 3]
[3, 2, 1]

11、list.sort()

排序

list = [5, 2, 4, 3, 1, 6]
list.sort()
print(list)
[1, 2, 3, 4, 5, 6]

四、将元组和列表转换成字典

字典是一个无序、可变和有索引的集合。用{ }来编写,将其他元素转化为字典时,要对应关键字和值

dict_data1 = dict(((1,2), (3,4)))  #将元组转化为字典
print(dict_data1)
{1: 2, 3: 4}




dict_data2 = dict([(5, 6), (7, 8)]) #将列表转化为字典
print(dict_data2)
{5: 6, 7: 8}

五、dict中所有方法的使用

1、dict.clear()

清除

dict_data = {1: 1, 2: 1, 3: 1, 4: 1, 5: 1}
dict_data.clear()
print(dict_data)
{}

2、dict.copy()

浅拷贝

dict_data = {1: 1, 2: 1, 3: 1, 4: 1, 5: 1}
dict_data.copy()
print(dict_data)
print(dict_data.copy())
{1: 1, 2: 1, 3: 1, 4: 1, 5: 1}
{1: 1, 2: 1, 3: 1, 4: 1, 5: 1}

3、dict.get()

通过键获取值,键不存在返回默认值

dict_data = {1: 1, 2: 1, 3: 1, 4: 1, 5: 1}
dict_data.get(3)
print(dict_data.get(3))

1

4、dinct.items()

 返回字典中所有的键值对组成的列表

dict_data = {1: 1, 2: 1, 3: 1, 4: 1, 5: 1}
dict_data.items()
print(dict_data.items())
dict_items([(1, 1), (2, 1), (3, 1), (4, 1), (5, 1)])

5、dic.keys

返回字典中所有的键组成的列表

dict_data = {1: 1, 2: 1, 3: 1, 4: 1, 5: 1}
dict_data.keys()
print(dict_data.keys())
dict_keys([1, 2, 3, 4, 5])

6、dic.pop

 删除并返回指定键的键值对

dict_data = {1: 1, 2: 1, 3: 1, 4: 1, 5: 1}
dict_data.pop(1)
print(dict_data)
{2: 1, 3: 1, 4: 1, 5: 1}

7、 dic.popitem

 按照先进后出的原则,删除字典的元素并以(key,value)元组返回。如果字典为空,则引发KeyError

dict_data = {1: 1, 2: 1, 3: 1, 4: 1, 5: 1}
dict_data.popitem()
print(dict_data)
{1: 1, 2: 1, 3: 1, 4: 1}

8、dic.setdefault

 如果键不存在于字典中,将会添加键并将值设为默认值

dict_data = {1: 1, 2: 1, 3: 1, 4: 1, 5: 1}
dict_data.setdefault(7)
print(dict_data)
{1: 1, 2: 1, 3: 1, 4: 1, 5: 1, 7: None}

9、dic.update

字典1合并字典2,对于在字典1中存在的键,使用字典2的值进行数据覆盖      

dict_data1 = {1: 1, 2: 1, 3: 1, 4: 1, 5: 1}
dict_data2 = {6: 2, 7: 2, 8:2}
dict_data1.update(dict_data2)
print(dict_data1)
{1: 1, 2: 1, 3: 1, 4: 1, 5: 1, 6: 2, 7: 2, 8: 2}

六、list或dict浅拷贝

赋值运算是相当于给值挂上a,b的标签,并没有改变内存地址

a = [1, 2, 3, 4, [5, 6, 9, [7, 8]]]
b = a
print(id(a))
print(id(b))
2226319752448
2226319752448

浅拷贝是创建一个对象,这个对象有着原始对象属性值的一份精准拷贝,如果属性是基本类型,拷贝的就是基本类型的值;如果属性是引用类型,拷贝的就是内存地址,如果其中一个对象改变了这个地址,就会影响到另一个对象。

 

a = {1: [1,2,3], 2:3, 4:5}
b = a.copy()
print(a, b)
a[1].append(4)
print(a, b)
{1: [1, 2, 3], 2: 3, 4: 5} {1: [1, 2, 3], 2: 3, 4: 5}
{1: [1, 2, 3, 4], 2: 3, 4: 5} {1: [1, 2, 3, 4], 2: 3, 4: 5}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/969424.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号