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

[复制链接]
ling332601 发表于 2017-12-31 00:07:46 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
我们针对列表需要进行整体的排序,今天就和大家聊一聊列表的排序应用。
) Z+ G* R4 A  f* i/ H& Q! [$ m一、永久性排序
* `% E6 ?1 n, c- }/ l* y7 l什么是永久性排序呢,之前很多方法比如针对字符串的title方法,针对列表的重复用法,改变的仅仅是显示,原对象内容并没有发生变化,接下来介绍的方法是可以改变对象本身的内容。
( C0 d. ^9 n$ K$ Y2 ^* X
& {% o8 M, i4 g+ o/ osort方法是对某个列表进行升序排序,本案例是对数字进行排序,文本排序是一样的。7 R0 {" z# E* w+ T0 q- c7 K
那降序如何实现呢?增加一个参数即可!& H( y' p3 u! O" b6 f

5 l, ]: T5 o( I( j. _: s二、临时排序, b' k- L# ~. `- K/ d
上一个分享的是永久排序,实施后改变列表排序,本方法只是改变显示的内容,列表本身顺序不做改变。
$ B4 h3 B3 V4 q- x' Y8 c# H+ W2 z) b8 E; I3 W: z$ s
三、倒转排序列表2 c$ K1 Y9 ~4 s: K( B
前面分享的不是升序就是降序排序,接下来和大家分享一下翻转或者倒转列表的排序。
! }; G- O5 _) a" T) \% [4 I本倒转排序是永久性的哦!如果想恢复,操作两次即可!
7 N# _3 W( Y- ]! W5 A) G2 }0 A
" c& h3 x% t! o) ^+ P四、列表的复制
) s- U, V# m) n- }, X/ J列表与列表之间是不能直接使用等号复制的,我们看一下案例。
8 o3 C( w# g! _6 ~* s3 r! |3 e( A/ @$ H
我们看一下结果,当我们把score2等于score1后,分别打印两个,发现两种是一致的。" |. q' K( C( y! m' {
但是当我们把score2的第一个元素改为0的时候,两个列表的值同时发生了变化,为什么会这样呢?
" P0 K0 e  [3 I! \* \4 ~! }3 r因为score1和score2是共享引用,他们虽然变量名字不同,但是其实引用的是一个列表。
3 q/ p7 m  S4 N- A; J就像你的女朋友可以称之为“宝贝”、也可以称之为“honey”。不管你惹恼宝贝、还是honey,生气的都是你女朋友,你都会吃不了兜着走~
! d. n5 T. s6 l* M6 U- G0 u$ E说了这么多,如何才能正确的复制呢?两种方法任君选择!
3 z+ J6 ~& @" ]2 w$ ~8 r3 K% Y方法一:copy方法~
% `' e3 I% z* U: h' y5 |
: s8 o; n2 g2 m! n方法二:赋值元素法
( Y' |. y" b3 o' J) l. G
  T% F, O. |7 A% E9 w3 n' k+ S通过.copy()方法或者score1[:]全量复制元素,效果相同,你喜欢就好!
! C, V1 b- I4 q* d( a  L# l" _/ \+ `下期和大家分享列表的特殊形态!元组!

本帖子中包含更多资源

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

x
回复

使用道具 举报

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

本版积分规则

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

扫一扫关注我们

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