首页 > python 字典排序 最大键_Python中的列表、元祖、字典、集合操作大全

python 字典排序 最大键_Python中的列表、元祖、字典、集合操作大全

0233861c0d43332868bb5cc108435279.png

来源:http://suo.im/5HPGNT


在Python中有4种内建的数据结构:列表、元组、字典、集合。今天我们将会学习如何使用它们,以及它们如何使编程变得简单

一、列表list

是处理一组有序项目的数据结构,即你可以在一个列表中存储一个 序列 的项目。假想你有一个购物列表,上面记载着你要买的东西,你就容易理解列表了。只不过在你的购物表上,可能每样东西都独自占有一行,

而在Python中,你在每个项目之间用逗号分割。列表中的项目应该包括在方括号中,这样Python就知道你是在指明一个列表。

一旦你创建了一个列表,你可以添加、删除或是搜索列表中的项目。由于你可以增加或删除项目,我们说列表是 可变的 数据类型,即这种类型是可以被改变的

b5e7b6bf1456899493ad2fa1452c0757.png

基本操作

84b1198c021f3185ea533e6525ec5a1e.png

基本操作——增

append 追加

b1b3d70ec1d863fab2a0652faa9a21b7.png

insert 插入

595503ecc819f9f71dc04520908f2af5.png

extend 追加到末尾

7880c0d9c71770acf3c75d5ce282346c.png

应用实例:

连续输入员工姓名,输入Q/q退出并打印列表

616811c7b9ec6365f2df18764d0486f1.png

运行结果:

5800a31c5760d525ae9c427dd4d6a7b5.png

列表——删

remove:按照元素删除

339ad446301be7767cab0ef280da7fca.png

pop:按照索引删除——有返回值

c2c71ca850e6928746d9f96784703571.png

clear: 清空

c7a85747b0703b019cf638a33c9430fb.png

del:删除

21cd7547df8df13e4486451bcf8dfeb4.png

循环删除

d8bbe4b242c4bd5708554eb0f6352a57.png

366f6049141d305d52709aec8b04f1e1.png

列表——改

li[索引] = ‘被修改的内容’

4d35aec4d64bff2c0b692bdde81c10c8.png

li[切片] = ‘被修改的内容’(迭代式:分成最小的元素,一个一个添加)

06c18e88c2ecd885fcde66ac499b7754.png

列表——查

从头到尾 :for循环

2e71c9d5413010dbc0a3f9c61a50333d.png

某一个:索引

868545aef1d378420e908f4ddae227a9.png

一段:切片

9072c63100120eaf86762b797baa981c.png

列表——嵌套

3444784a6c5f66c31013fba0df5d460b.png

列表——循环打印

494940d4930a873c13c28b756fb926d6.png

其他常用操作

split:字符串转换成列表 str--->list

aa1d5c0f5a8e6bb12a373247c4a750a4.png

join:列表转换成字符串 list--->str

join(可迭代对象iterable)   split

可迭代对象iterable:list,str,元祖

1d3efa5107fa02c21d0c906b08f56827.png

range:顾头不顾尾——相当于有序的数字列表(可以反向,加步长)

8d40223090b4dbac365e2b56c2ec9635.png

应用实例:

循环打印,列表里遇到列表也需要循环打印

e7f2a1111b09b9e57a8f09af05933089.png

运行结果:

232cc1940fe3d7927f1c5f2ba7cfedda.png

二、元祖

元组和列表十分类似,只不过元组和字符串一样是 不可变的 即你不能修改元组。元组通过圆括号中用逗号分割的项目定义。

元组通常用在使语句或用户定义的函数能够安全地采用一组值的时候,即被使用的元组的值不会改变

d3b82e25c576a05ffb64cc95b2341fdf.png

62ea853e1311b50cd07d46699e024472.png

元组的基本操作

f33dcdef331f67b4666a1551727878d4.png

三、字典

字典类似于你通过联系人名字查找地址和联系人详细情况的地址簿,即,我们把键(名字)和值(详细情况)联系在一起。注意,键必须是唯一的,就像如果有两个人恰巧同名的话,你无法找到正确的信息。

注意,你只能使用不可变的对象(比如字符串)来作为字典的键,但是你可以把不可变或可变的对象作为字典的值。

基本说来就是,你应该只使用简单的对象作为键。

键值对在字典中以这样的方式标记:d = {key1 : value1, key2 : value2 }。

注意它们的键/值对用冒号分割,而各个对用逗号分割,所有这些都包括在花括号中

dict

    key(键)必须是不可变数据类型,可哈希

    value(值)任意数据类型

dict 优点:二分查找去查询

    存储大量的关系型数据

特点:<=3.5版本无序,3.6以后都是有序

1.字典— 增

dic['键'] = 值

6246d6c03319a4f674a5817007879a0d.png

setdefault 设置默认

971e039d60fdf1943b1094547be3b20d.png

2. 字典—— 删

删除优先使用pop(有返回值,要删除的内容不存在时不报错),而不是del

pop 删除

f9897888d35d72e18fe92b76c6187a0c.png

popitem 随机删除

0537dcdd684a21a84855b4077a185141.png

clear 清空

09c0467245480909614d35ed294c57fc.png

del 删除

b7f58702545a76c34de03068d47c3dbe.png

3. 字典—— 改 

update

faf435fb85e80ec536c5ad1b385a3b7b.png

4. 字典——查

keys,values,items

28aaca8de4f5ab55cc91618410dc1b66.png

得到键值,首选get

5fcab66f581c58ad43cd77cbba02cca7.png

循环输出

bfd595ac8f1a75193f27d7d15205f409.png

5. 字典的嵌套

f5bc5e9449bc038eaddb9f6d4f895e61.png

03d075e8de2582475286d4f80ed31d96.png

应用实例:

#输入一串字符,遇到字母,转换为‘_’,并打印输出

9a942230ef1011d1c1a95cf6e474d5fa.png

运行结果:

7e96e1f9ae94759b2ccf4b8f54821c59.png

四、集合

集合 类似于列表,但每个元素都必须是独一无二且不可变的:

它是无序的

基本操作

7cc31e9add3e4a0f7021756f3035f9cb.png

1. 集合——增 

add

842fe653385b4b42f1c6e05c0b715b2a.png

update

a4eaa6892a70b381e5501fca7eeb8f38.png

2. 集合——删 

'alex',

pop--随机删除

caf6bbcd1585a20ae8c3bf6850d1aa96.png

remove——指定元素删除

0900f54b87e25ca53635dcd6d47808e3.png

clear——清空

c5237928c14a22aff7dc86c5ffb37c36.png

del

61ff251ac747467a33542d96ef911646.png

3.集合不能改

集合是无序;

集合中的元素是不可变数据类型

4. 集合——查

03ddbb19da1a1f27c7f95beb6323efc4.png

运行结果:

be85ceb26bdb264c9654f1173c5dc682.png

5. 集合之间的操作

bb6d891fbc6dd8e03709d4638445f296.png

交集

44cecb1c254dc3070f997e3be47f6d9b.png

并集

ffbf80bfaadc3bd55ec06c58f8ad838b.png

反交集--除交集以外的其他元素

61af9a28d98f37b021415deffb457b03.png

差集--前者独有的

4b156da940035fb031cf1e5ec5415d1c.png

子集与超集

126a2933eba52a17f459722e3cfa708b.png

五、公共方法

排序

正向排序:sort()  

c46c1e2f3a5b901d0ee1d03373bbcaf9.png

倒序排序:li.sort(reverse = True)

e3d8cd476a4ca2be763e1050e50a0132.png

反转:li.reverse()

b7dbd26984ce30016ffc30e369336643.png

补充:

字符串列表排序——根据字符串的第一个字符对应的ASCII码排序

127a6df8ea5cbcae0498e1cf0d7995f3.png

count()  数元素出现的次数

480c92da4138e8ab0108fe2ad52cbb5c.png

len()  计算列表的长度

3da27b1f8530fa7d183d450120712a17.png

li.index('元素')   查看索引

96d39600a57c9a03592ebea6eb2a3705.png

六. 区别与异同

9de2393c7a8ad1574631b3186d3a6f6f.png

END你点的每个在看,我都认真当成了喜欢

更多相关:

  • python列表(数组)  列表(list)  就是 数组   - 列表是Python中的一个对象   - 对象(object)就是内存中专门用来存储数据的一块区域   - 之前我们学习的对象,像数值,它只能保存一个单一的数据   - 列表中可以保存多个有序的数据   - 列表是用来存储对象的对象   - 列表的使用:   ...

  • 【列表|字典】 Tcl使用列表来处理各种集合,比方一个目录中的全部文件,以及一个组件的全部选项。最简单的列表就是包括由随意个空格、制表符、换行符、分隔的随意多个元素的字符串。比方: JerryAlice Mandy David l  lindex命令: --> 获取元素 至少须要两个參数,一个列表和一个索引值。返回取得的元素...

  • 节点列表由 getElementsByTagName() 方法和 childNodes 属性返回。 实例 下面的例子使用 XML 文件 books.xml。 函数 loadXMLDoc(),位于外部 JavaScript 中,用于加载 XML 文件。 从第一个 元素获取文本 本例使用 getElementsByT... </p> </div> </div> </li><li> <div class="arcTitle clearfix"> <h3><a href="//11gx.com/f53ucewmn4/" target="_blank">github上删除一个仓库</a></h3> </div> <div class="clearfix"> <div class="arcDes"> <p>首先进入到你需要删除的仓库,在这个页面的左侧或者上部找到”settings”选项 点击进入”settings”,然后一直往下拉,直到看到一个红色的横条区域,下面有一个”Delet this respository”,点击删除即可  ... </p> </div> </div> </li><li> <div class="arcTitle clearfix"> <h3><a href="//11gx.com/dso14le2pt/" target="_blank">session删除</a></h3> </div> <div class="clearfix"> <div class="arcDes"> <p>删除一个session值:   session_unset(变量);   session_destroy(变量); 删除一个cookie:   注意第二个参数中手册中的说明是:      Cookie 必须用和设定时的同样的参数才能删除。如果其值一个空字符串,或者是 FALSE,并且其它的参数都和前一次调用 setcookie 时相... </p> </div> </div> </li><li> <div class="arcTitle clearfix"> <h3><a href="//11gx.com/6fo1tx7kqb/" target="_blank">[转]Java中常用的集合—初学者的你不可错过的精编整理</a></h3> </div> <div class="clearfix"> <div class="arcDes"> <p>集合一直都是项目中非常常见的,我是一个Android开发者,集合对于我来说,在项目中使用的次数非常之多,因为使用的多,熟能生巧,所以这里呢!就给那些初学者整理一下Java当中常用的集合吧!   因为此篇文章是给初学者看到,所以对于集合的认识,我们就不从内存的角度去分析了,等你Java学到一定的时候,再去学习一下集合的底层实现,这会让... </p> </div> </div> </li><li> <div class="arcTitle clearfix"> <h3><a href="//11gx.com/kujmwixzf0/" target="_blank">一目了然了解JAVA集合体系</a></h3> </div> <div class="clearfix"> <div class="arcDes"> <p>在编程中,常常需要集中存放多个数据。从传统意义上讲,数组是我们的一个很好的选择,前提是我们事先已经明确知道我们将要保存的对象的数量。一旦在数组初始化时指定了这个数组长度,这个数组长度就是不可变的,如果我们需要保存一个可以动态增长的数据(在编译时无法确定具体的数量),java的集合类就是一个很好的设计方案了。集合类主要负责保存、盛装其他... </p> </div> </div> </li><li> <div class="arcTitle clearfix"> <h3><a href="//11gx.com/qiubes8mah/" target="_blank">「欧拉定理」学习笔记(费马小定理)</a></h3> </div> <div class="clearfix"> <div class="arcDes"> <p>欧拉定理:对于互质的两个正整数$a, n$,满足$a^{φ(n)} ≡ 1  (mod n)$ 证明:   设集合$S$包含所有$n$以内与$n$互质的数,共有$φ(n)$个:$$S = { x_1, x_2, ..., x_{φ(n)} } $$   再设集合$T$:$$T = { a * x_1 \% n, a * x_... </p> </div> </div> </li> </ul> </div> </div> </div> <!-- <div class="simle_box300"></div> --> </div> </section> <div class="footer-wrapper"> <div class="footer"> <p class="text-center"> ©2024 11GX.COM </p> </div> </div></body> </html>