小白之Python-基础中的基础04
继续。。
------------------------华丽的分界线-----------------------------
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
小白之Python-基础中的基础04的更多相关文章
- [.net 面向对象编程基础] (3) 基础中的基础——数据类型
[.net 面向对象编程基础] (3) 基础中的基础——数据类型 关于数据类型,这是基础中的基础. 基础..基础..基础.基本功必须要扎实. 首先,从使用电脑开始,再到编程,电脑要存储数据,就要按类型 ...
- [.net 面向对象编程基础] (4) 基础中的基础——数据类型转换
[.net面向对象编程基础] (4)基础中的基础——数据类型转换 1.为什么要进行数据转换? 首先,为什么要进行数据转换,拿值类型例子说明一下, 比如:我们要把23角零钱,换成2.30元,就需要把整形 ...
- [.net 面向对象编程基础] (5) 基础中的基础——变量和常量
[.net面向对象编程基础] (5) 基础中的基础——变量和常量 1.常量:在编译时其值能够确定,并且程序运行过程中值不发生变化的量. 通俗来说,就是定义一个不能改变值的量.既然不能变动值,那就必须 ...
- [.net 面向对象编程基础] (6) 基础中的基础——运算符和表达式
[.net 面向对象编程基础] (6) 基础中的基础——运算符和表达式 说起C#运算符和表达式,小伙伴们肯定以为很简单,其实要用好表达式,不是一件容易的事.一个好的表达式可以让你做事半功倍的效果,比如 ...
- [.net 面向对象编程基础] (7) 基础中的基础——流程控制语句
[.net 面向对象编程基础] (7) 基础中的基础——流程控制语句 本来没有这一节的内容,后来考虑到既然是一个系列文章,那么就尽可能写的详细一些,本节参考了网上朋友所写的例子,为的是让更多小伙伴学习 ...
- [.net 面向对象编程基础] (8) 基础中的基础——修饰符
[.net 面向对象编程基础] (8) 基础中的基础——修饰符 在进入C#面向对象核心之前,我们需要先对修饰符有所了解,其实我们在前面说到变量和常量的时候,已经使用了修饰符,并且说明了变量和常量的修改 ...
- 从头开始学JavaScript 笔记(一)——基础中的基础
原文:从头开始学JavaScript 笔记(一)--基础中的基础 概要:javascript的组成. 各个组成部分的作用 . 一.javascript的组成 javascript ECMASc ...
- C++ 基础中的基础 ---- 引用
C++ 基础中的基础 ---- 引用 引用的概念:引用变量是一个别名,也就是说,它是某个已存在变量的另一个名字.一旦把引用初始化为某个变量,就可以使用该引用名称或变量名称来指向变量.比如: int n ...
- python之基础中的基础(一)
python是一个效率极高的语言,现在市面上的机器学习大部分是由python和R语言完成,所以在不久之前小仙心中便种下了学习python的想法.下面是这一个月多月以来学习的总结,都是基础中基础了. 1 ...
- 【Python】编程小白的第一本python(基础中的基础)
一.变量 如果不知道变量是什么类型,可以通过type()函数来查看类型,在IDE中输入: print(type(word)) 另外,由于中文注释会导致报错,所以需要在文件开头加一行魔法注释 #codi ...
随机推荐
- 【DS】1.2
top-iron man 算法 效率度量 时间T=T(n) 1.顺序忽略2.只选一个基本操作分析3.多层嵌套只考虑最深的循环循环了几次 test1: test2: 空间 原地工作:算法所需内 ...
- clion添加ROS环境变量
gedit ~/.local/share/applications/jetbrains-clion.desktop 修改 Exec="/home/cjn/soft-pack/clion-20 ...
- elasticsearch之使用正则表达式自定义分词逻辑
一.Pattern Analyzer简介 elasticsearch在索引和搜索之前都需要对输入的文本进行分词,elasticsearch提供的pattern analyzer使得我们可以通过正则表达 ...
- Backbone 网络-ResNet 论文解读
摘要 残差网络(ResNet)的提出是为了解决深度神经网络的"退化"(优化)问题. 有论文指出,神经网络越来越深的时候,反传回来的梯度之间的相关性会越来越差,最后接近白噪声.即更深 ...
- Jetpack Compose学习(11)——Navigation页面导航的使用
原文:Jetpack Compose学习(11)--Navigation页面导航的使用 - Stars-One的杂货小窝 在Android原生的View开发中的,也是有Navigation,原生我之后 ...
- SQL 注入之:SQL Server 数据库
郑重声明: 本笔记编写目的只用于安全知识提升,并与更多人共享安全知识,切勿使用笔记中的技术进行违法活动,利用笔记中的技术造成的后果与作者本人无关.倡导维护网络安全人人有责,共同维护网络文明和谐. SQ ...
- python flask后端request获取参数的几种方式整理
最近用 flask 写后端,将获取访问参数的几种方式总结整理一下,仅供参考 从 postman 上来看,调用后端接口传参的方式有两种,一种是 params,参数是以?a=x&b=y 的形式显示 ...
- TDSQL-C Serverless 服务是如何实现通过接入层来实现恢复感知
在一些极限的测试场景下,数据库实例会频繁的自动启停,这时候如何保证数据库实例停止后快速恢复呢?如何保证在恢复数据库实例时无需用户重复链接,直到恢复访问? 站在用户的角度考虑,谁都不希望数据库每次启停都 ...
- java正则匹配字符串最外层{}里的内容,包含{}
String s = "start {sffff''{adfaw3ea}wfewrfwef----}";String regex = "(?<=\\{).*(?=\ ...
- js 判断条件分支优化
优化前: 1.简单分支优化: 2.复杂分支优化: 3.抽离分支: