继续。。

------------------------华丽的分界线-----------------------------

Python-基础中的基础04
--之方法

格式:对象.方法()

1.append():用于在列表末尾追加新的对象---对应移除的方法是pop()
append方法与在java中的意义一致,都是直接修改原来列表/数组。并不是返回一个新的列表/数组

numberlist = [1,2,3,4,5,6]
numberlist.append(7)
print numberlist
----------
[1, 2, 3, 4, 5, 6, 7]

2.count():用于统计某个元素在列表中出现的次数

count = ['to','be','or','not','to','be',].count('to')
print count
----------------
2 x = [[1,2],1,1,[2,1,[1,2]]]
print x.count(1)
print x.count([1,2])
---------------
2
2

3.extend(): 用于在列表末尾一次性追加另一个序列中的多个值(两个列表合并的意思)

#extend方法会改变调用该方法序列的值
a = [1,2,3]
b = [4,5,6]
a.extend(b)
print a
print b
-------------
[1, 2, 3, 4, 5, 6]
[4, 5, 6]
#列表+连接方式不会改变原列表的值,a+b后生成一个新的列表序列
a = [1,2,3]
b = [4,5,6]
print a
print b
print a+b
-------------
[1, 2, 3]
[4, 5, 6]
[1, 2, 3, 4, 5, 6]

4.index:用于从列表中找出某个值第一个匹配项的。

maomao =['mao','mao','shi','zhi','zhu']
print maomao.index('zhu')
print maomao[4]
print maomao[len(maomao)-1]
print maomao[len(maomao)-1:]
print maomao.index('benben')
-----------------
4
zhu
zhu
['zhu']
print maomao.index('benben')
ValueError: 'benben' is not in list

5.insert:用于将对象插入到列表
两种方式:insert方法和分片方法

number = [1,2,3,5,6,7]
number.insert(3,'four') #insert方法
print number number[3:3]=['four2'] #分片方法
print number
---------------
[1, 2, 3, 'four', 5, 6, 7]
[1, 2, 3, 'four2', 'four', 5, 6, 7]

6.pop:移除列表中的一个元素,默认最后一个,并返回该元素的值
是唯一一个既能修改列表又返回元素值的列表方法

number = [1,2,3,5,6,7]
print number.pop() #唯一一个有返回值的列表方法,其他的如append、sort、reverse都没返回值
print number
print number.pop(4)
print number
print number.pop(len(number)-1)
print number
print ('-'*15)
print number.append(number.pop())
print ('-'*15)
number.append(number.pop())
print number
------------------------
7
[1, 2, 3, 5, 6]
6
[1, 2, 3, 5]
5
[1, 2, 3]
---------------
None #number.append(number.pop())中append(number.pop())没有返回值,所以调用后为None
---------------
[1, 2, 3]

7.remove:移除列表中某个值的第一个匹配项,但不返回该元素的值(与pop相反)

print ('-'*30)
maomao =['mao','mao','shi','zhi','zhu']
print maomao.remove('mao')
print maomao
------------------------------
None
['mao', 'shi', 'zhi', 'zhu']

8.reserve:将列表中的原色反向存放

#只能用于列表中
maomao =['mao','mao','shi','zhi','zhu']
maomao.reverse()
print maomao
----------------------
['zhu', 'zhi', 'shi', 'mao', 'mao']
reversed方法可用于列表或者序列
#reversed方法返回的不是列表,返回迭代器iterator对象,需要用liest转换城列表
number=[1,2,3]
print list(reversed(number))
----------------
[3, 2, 1] x="name"
print list(reversed(x))
---------------------
['e', 'm', 'a', 'n']

9.sort:用于在原位置对列表进行排序。会改变原有列表的元素顺序

#sort()方法调用后,直接改变x列表的元素顺序
x=[1,3,4,5,3,2,24,6,63,42,32]
x.sort() #x.sort()方法调用后,不会直接返回值,会返回空值,所以不能直接在调用别的方法
print x
----------------------------
[1, 2, 3, 3, 4, 5, 6, 24, 32, 42, 63]

但如即需要原列表值,又需要排序后的列表值,就需要把原列表copy出一份,在进行sort排序
copy方式有两种:
1.用分片方法,copy出列表
2.用sorted()方法,copy出列表,sorted方法适用于所有序列类型,返回值类型为list

#.用分片方法
x=[1,3,4,5,3,2,24,6,63,42,32]
y=x[:]
y.sort()
print x
print y
----------------------------
[1, 3, 4, 5, 3, 2, 24, 6, 63, 42, 32]
[1, 2, 3, 3, 4, 5, 6, 24, 32, 42, 63] #用sorted()方法
x=[1,3,4,5,3,2,24,6,63,42,32]
y=sorted(x)
print x
print y
----------------------------
[1, 3, 4, 5, 3, 2, 24, 6, 63, 42, 32]
[1, 2, 3, 3, 4, 5, 6, 24, 32, 42, 63] sorted方法适用于所有序列类型,返回值类型为list
sorted方法会返回列表,可继续调用其他方法,如逆序 print sorted('python')
----------------------------
['h', 'n', 'o', 'p', 't', 'y'] #sorted方法按照默认顺序排序 升序 x=sorted('python')
print x
print list(reversed(x))
----------------------
['h', 'n', 'o', 'p', 't', 'y']
['y', 't', 'p', 'o', 'n', 'h'] print sorted('python')
print list(reversed(sorted('python'))) #reversed方法返回的不会列表,返回迭代器对象,需要用liest转换城列表
----------------------
['h', 'n', 'o', 'p', 't', 'y']
['y', 't', 'p', 'o', 'n', 'h']

10.高级排序概念引入
compare(x,y)是一个比较函数
x<y,返回负数
x>y,返回正数
x=y,返回0
--->内建函数cmp实现该方式

print cmp(3,5)
print cmp(6,2)
print cmp(2,2)
--------------
-1
1
0 mm=[2,3,5,3,2]
mm.sort()
print mm
mm=[2,3,5,3,2]
mm.sort(cmp)
print mm
---------------
[2, 2, 3, 3, 5]
[2, 2, 3, 3, 5]

另一种排序方式,引入key函数,key函数作为排序的键,由用户自定义后赋值给sort

x=['wer','werwerq','trewtr','ewrewrwewer']
x.sort(cmp=None, key=len, reverse=False) # key值是序列元素的len长度
print x x=['wer','werwerq','trewtr','ewrewrwewer']
x.sort(key=len) #key值是序列元素的len长度
print x
---------------
['wer', 'trewtr', 'werwerq', 'ewrewrwewer']
['wer', 'trewtr', 'werwerq', 'ewrewrwewer']

。。。嗯,越来越多东西。。喵了个咪(o゚▽゚)o

最新文章

  1. 《征服 C 指针》摘录4:函数 与 指针
  2. Python的高级特性7:闭包和装饰器
  3. MySQL group_concat 1024 大小
  4. SQl中Left Join 、Right Join 、Inner Join与Ful Join
  5. 常用js函数
  6. MYSQL 时间计算的 3 种函数
  7. UVA 2039 Pets(网络流)
  8. UVa 12459 - Bees&amp;#39; ancestors
  9. awvs 中文手册详细版
  10. c语言程序设计第3周编程作业(数字特征)
  11. Lambda表达式概念与基本语法
  12. docker tmpfs 的测试结果
  13. constexpr和常量表达式
  14. 转 python测试框架最全资源汇总
  15. python摸爬滚打之day11----函数闭包,迭代器
  16. Qt实在太漂亮了
  17. 使用Fortify进行代码静态分析(系列文章)
  18. day27 python学习 logging
  19. 学习《深入理解C#》—— 委托的构成、合并与删除和总结 (第二章1.1---1.4)
  20. log4j的使用配置

热门文章

  1. C4模型,架构设计图的脚手架,你值得拥有
  2. mysql怎么设计库、设计表
  3. Where do I Turn?(叉积)
  4. 如何设置QGraphicsItem线宽不随QGraphicsView缩放而变小或变大
  5. redis RDB和AOF
  6. XAF特性属性记录
  7. Docker中安装Gitlab详细全教程
  8. 安装完IDEA后无法打开
  9. JavaSE 日期时间类整理
  10. 蓝牙mesh组网实践(选择性配网与自配网参数分析)