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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Java 注解(Annotation)

    Java 注解(Annotation)文章目录Annotation工作方式JDK5内建Annotation限定Override父类方法@Override标示方法为Deprecated@Deprectated抑制编译程序警告@SuppressWarnings自定义Annotation类型Annotation高级特性Annotation工作方式从Java5.0版发布以来,5.0平台提供了一个正式的annoatation功能:允许开…

    2022年7月7日
    16
  • java调用python脚本返回的参数_javaweb调用python

    java调用python脚本返回的参数_javaweb调用python实际工程项目中可能会用到Java和python两种语言结合进行,这样就会涉及到一个问题,就是怎么用Java程序来调用已经写好的python脚本呢,一共有四种方法可以实现:1、在java类中直接执行python语句此方法需要引用org.python包,需要下载Jpython。Jython是一种完整的语言,而不是一个Java翻译器或仅仅是一个Python编译器,它是一个Python语言在Java中的完全实现。Jython是在JVM上实现的Python,由J

    2025年8月25日
    3
  • Redis端口为什么是6379?

    Redis端口为什么是6379?先介绍下redis的作者SalvatoreSanfilippo(Antirez),意大利人,就是下图这位。Antirez现在已经40多岁了,依然奋斗在代码一线,为开源社区做贡献。Antirez出生在非英语系国家,所以英语一直是他的短板。他曾经写过一篇博文,《英语伤痛15年》,以自己的实际经历鼓励非英语系国家的程序员突破英语障碍。或说回来,在他的另一篇博文《Redisasan…

    2022年6月1日
    82
  • 基于Rust-vmm实现Kubernetes运行时[通俗易懂]

    基于Rust-vmm实现Kubernetes运行时[通俗易懂]随着容器及K8s的广泛使用,越来越多的容器安全与隔离问题被暴露出来,如:容器逃逸、水平攻击、DDos攻击等严重威胁了办公和生产环境的安全与稳定,影响了业务的正常运行。安全容器技术孕育而生,产生了kata、gVisor、unikernel等多种安全容器方案。本文旨在介绍各种安全容器方案,分析各方案特点,结合腾讯在容器安全领域的实践,帮助读者选择适合自身特性的容器运行时。同时引入Rust-VMM项目,介绍Rust-VMM技术和生态,演示如何使用K8s调度和启用Rust-VMM安全容器运行时,展望以Rust语

    2022年9月14日
    2
  • IEC104规约流程

    IEC104规约流程该规约在DF8900中规约号为104,在DF8002或DF1800系统中规约号一般为99,但也有个别现场因实际情况而不同.97版或2002版IEC104在流程上没有什么变化,只是扩展了遥测遥信等信息体基地址..索引项目部分报文字节个数参数地址范围流程常用类型标识

    2022年6月20日
    47
  • JAVA如何调用对方http接口得到返回数据

    JAVA如何调用对方http接口得到返回数据https://tcc.taobao.com/cc/json/mobile_tel_segment.htm?tel=”手机号码”jsp代码:<formaction=”https://tcc.taobao.com/cc/json/mobile_tel_segment.htm”method=”post”>请输入手机号:<inputtype=”tex…

    2022年5月10日
    38

发表回复

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

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