python-元组,字典,列表

python-元组,字典,列表

问题

由于会处理一些json数据,内部字典,列表,元租傻傻分不清,所以这里总结一下他们的特点,便于提取数据
想要知道跟多看官方文档,很详细
https://www.runoob.com/python/python-lists.html
我是看了官方文档后总结后我自己的

解决

字典特点

a={
   1:'a',2:'b',2:"B"}
print(type(a))#相同键,后面的覆盖前面的
#取值 a
print(a[1])
#修改 {1: 'c', 2: 'B'}
a[1]='c'
print(a)
#删除 {2: 'B'}
del(a[1])
print(a)
#如果setdefault设定的键存在,就返回对应键的值。不存在则添加新的键,返回设定的新键值
ss=a.setdefault(2,"e")
print(ss)#B
print(a)
ss=a.setdefault(4,"E")
print(ss)#E
print(a)

常用函数

内置函数
1 cmp(dict1, dict2)
比较两个字典元素。
2 len(dict)
计算字典元素个数,即键的总数。
3 str(dict)
输出字典可打印的字符串表示。
4 type(variable)
返回输入的变量类型,如果变量是字典就返回字典类型。
内置方法
1 dict.clear()
删除字典内所有元素
2 dict.copy()
返回一个字典的浅复制
3 dict.fromkeys(seq[, val])
创建一个新字典,以序列 seq 中元素做字典的键,val 为字典所有键对应的初始值
4 dict.get(key, default=None)
返回指定键的值,如果值不在字典中返回default值
5 dict.has_key(key)
如果键在字典dict里返回true,否则返回false
6 dict.items()
以列表返回可遍历的(键, 值) 元组数组
7 dict.keys()
以列表返回一个字典所有的键
8 dict.setdefault(key, default=None)
和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default
9 dict.update(dict2)
把字典dict2的键/值对更新到dict里
10 dict.values()
以列表返回字典中的所有值
11 pop(key[,default])
删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。
12 popitem()
返回并删除字典中的最后一对键和值。

元组特点

元素不可修改
元组中只包含一个元素时,需要在元素后面添加逗号
tup1 = (50,)
任意无符号的对象,以逗号隔开,默认为元组
x, y = 1, 2

a=(1,2,3)
#查询 1
print(a[0])
#增加 (1, 2, 3, 1)
a=a+(1,)
print(a)
#删除只能全部删除
#del(a)
#len(),a*4,for i in a,a[-2],a[:]可用
#类型 <class 'tuple'> (1, 2)
x=1,2
print(type(x),x)

内置函数

1 cmp(tuple1, tuple2)
比较两个元组元素。
2 len(tuple)
计算元组元素个数。
3 max(tuple)
返回元组中元素最大值。
4 min(tuple)
返回元组中元素最小值。
5 tuple(seq)
将列表转换为元组。

列表

最好用的

a=[1,2,3]
#查询 1
print(a[0])
#增加 [1, 2, 3, 1]
a.append(1)
print(a)
#修改 [2, 2, 3, 1]
a[0]=2
print(a)
#删除 [2, 3, 1]
del(a[0])
print(a)

内置函数

1 cmp(list1, list2)
比较两个列表的元素
2 len(list)
列表元素个数
3 max(list)
返回列表元素最大值
4 min(list)
返回列表元素最小值
5 list(seq)
将元组转换为列表

内置方法

序号 方法
1 list.append(obj)
在列表末尾添加新的对象
2 list.count(obj)
统计某个元素在列表中出现的次数
3 list.extend(seq)
在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
4 list.index(obj)
从列表中找出某个值第一个匹配项的索引位置
5 list.insert(index, obj)
将对象插入列表
6 list.pop([index=-1])
移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
7 list.remove(obj)
移除列表中某个值的第一个匹配项
8 list.reverse()
反向列表中元素
9 list.sort(cmp=None, key=None, reverse=False)
对原列表进行排序

列表使用sorted排序

a=['4',"111","2222","33333",'5']
b=sorted(a,key = lambda i:len(i),reverse=True)
print(b)

sorted(iterable, cmp=None, key=None, reverse=False)
iterable:是可迭代类型;
cmp:用于比较的函数,比较什么由key决定;
key:用列表元素的某个属性或函数进行作为关键字,有默认值,迭代集合中的一项;
reverse:排序规则. reverse = True 降序 或者 reverse = False 升序,有默认值。

内置sorted返回一个新的列表,而list.sort是对列表进行操作
myList.sort(key = lambda i:len(i),reverse=True)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/100250.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 使用socks4 socks5 http代理的客户端

    使用socks4 socks5 http代理的客户端///定义的结构structsock4req1{   charVN;   charCD;   unsignedshortPort;   unsignedlongIPAddr;   charother[1];};structsock4ans1{   charVN;   charCD;};structsock5req1{   charVer;   char

    2022年6月26日
    35
  • [Android Studio 权威教程]断点调试和高级调试

    [Android Studio 权威教程]断点调试和高级调试有人说Android的调试是最坑的,那我只能说是你不会用而已,我可以说AndroidStudio的调试是我见过最棒的。好了开始写一个简单的调试程序,我们先来一个for循环for(inti=0;i<10;i++){//获取当前i的值intselector=i;//打log查看当前i的值(此步多余,实际开发请忽略)Logger.e("fo

    2022年5月11日
    39
  • IT公司速查手册–IT公司红黑榜

    IT公司速查手册–IT公司红黑榜IT公司速查手册–IT公司红黑榜http://www.bewww.net/index.html今天看到bewww.net原来有红黑榜,好像以前上去的时候还没有这个的。找工作的兄弟们要多留个心眼了,可疑的公司要先上网上查下,防止受骗~~~~黑榜上有不少挺熟悉的公司,好像我还投过简历的也有~~~ 

    2022年7月16日
    14
  • logstash修改字段内容_logstash原理

    logstash修改字段内容_logstash原理logstash数据类型的修改logstash中可以设置字段的类型为integer,float,stringfilter{mutate{convert=>[“request_time”,”float”]#设置request_time的类型为float类型}}注意:mutate除了转化字符值,还支持对数组类型的字段进行转换,即将[“1″,”2”]转换

    2025年9月17日
    5
  • 开源分布式文件存储 Minio

    开源分布式文件存储 MinioSpringBoot轻松整合Minio

    2022年6月5日
    43
  • sdio接口wifi模块_连接路由器的用哪个接口

    sdio接口wifi模块_连接路由器的用哪个接口SDIO-WiFi即基于SDIO接口符合WiFi标准的嵌入式模块,内置802.11协议栈以及TCP/IP协议栈,可实现主平台铜鼓SDIO到无线网络之间转换SDIO:传输数据块,兼容SD,MMC接口等先以SDIO设备注册,然后检测到再注册WiFi功能,即用SDIO协议发送命令和数据sdio基本概念接口1.SD的IO接口,透过SD的IO接口连接外设,透过SD卡的IO数据接位…

    2022年10月3日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号