Python读书笔记9(列表排序与复制)

[复制链接]
ling332601 发表于 2017-12-31 00:07:46 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
我们针对列表需要进行整体的排序,今天就和大家聊一聊列表的排序应用。! M& S* k% a$ t9 C! I
一、永久性排序
6 s: U( v0 G( C+ n什么是永久性排序呢,之前很多方法比如针对字符串的title方法,针对列表的重复用法,改变的仅仅是显示,原对象内容并没有发生变化,接下来介绍的方法是可以改变对象本身的内容。
- q- B) _. q: v: Y
, d; X, k, [( e# E5 `sort方法是对某个列表进行升序排序,本案例是对数字进行排序,文本排序是一样的。: O( U# Z( V" t0 S5 t9 G: T6 b8 t: `' h: g
那降序如何实现呢?增加一个参数即可!
: p: q+ N" B* q2 }9 {" A9 I$ L/ f( \8 T) f9 y/ Q% v8 L
二、临时排序; n& _% J9 E8 k- ^2 i5 u# u
上一个分享的是永久排序,实施后改变列表排序,本方法只是改变显示的内容,列表本身顺序不做改变。
+ J% k2 \, A- z& ~7 j& x$ U: e$ ]: G& P$ ^3 x6 \
三、倒转排序列表; L) h, O- p& S
前面分享的不是升序就是降序排序,接下来和大家分享一下翻转或者倒转列表的排序。
' P$ n# R/ M9 s本倒转排序是永久性的哦!如果想恢复,操作两次即可!& z1 u  Q6 V' o6 s

+ V- ^3 b. T4 H2 l5 U& p四、列表的复制1 {- r7 Y  L) k- D1 x' r/ L0 E
列表与列表之间是不能直接使用等号复制的,我们看一下案例。3 e  S2 z7 r3 H! b
9 C( b( c2 a1 N# r$ l+ W+ }; G
我们看一下结果,当我们把score2等于score1后,分别打印两个,发现两种是一致的。7 z9 V3 A" U8 B4 G: u! r
但是当我们把score2的第一个元素改为0的时候,两个列表的值同时发生了变化,为什么会这样呢?: b1 s& H( G/ s+ w' x& F6 {
因为score1和score2是共享引用,他们虽然变量名字不同,但是其实引用的是一个列表。# O7 B0 L4 P- c/ l# W+ I/ t
就像你的女朋友可以称之为“宝贝”、也可以称之为“honey”。不管你惹恼宝贝、还是honey,生气的都是你女朋友,你都会吃不了兜着走~1 w* }/ {/ p1 K% ]
说了这么多,如何才能正确的复制呢?两种方法任君选择!. l2 o' D9 y7 T
方法一:copy方法~
& E3 U" A! w* g
- s1 |: E8 l! o9 w3 P9 d0 r* i# D方法二:赋值元素法
5 f% n9 U4 Z- @
6 w1 C0 B+ G  @! r: R) _" t0 e通过.copy()方法或者score1[:]全量复制元素,效果相同,你喜欢就好!
% ]% W. L' r) h" H5 _* ~& q下期和大家分享列表的特殊形态!元组!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

发布主题
推荐阅读更多+
阅读排行更多+
用心服务创业者
0851-88611148
周一至周五 9:00-18:00
意见反馈:admin@0851life.com

扫一扫关注我们

Powered by 童码少儿编程 X3.4© 2001-2013 0851life Inc.|网站地图