继续。。

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

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的更多相关文章

  1. [.net 面向对象编程基础] (3) 基础中的基础——数据类型

    [.net 面向对象编程基础] (3) 基础中的基础——数据类型 关于数据类型,这是基础中的基础. 基础..基础..基础.基本功必须要扎实. 首先,从使用电脑开始,再到编程,电脑要存储数据,就要按类型 ...

  2. [.net 面向对象编程基础] (4) 基础中的基础——数据类型转换

    [.net面向对象编程基础] (4)基础中的基础——数据类型转换 1.为什么要进行数据转换? 首先,为什么要进行数据转换,拿值类型例子说明一下, 比如:我们要把23角零钱,换成2.30元,就需要把整形 ...

  3. [.net 面向对象编程基础] (5) 基础中的基础——变量和常量

    [.net面向对象编程基础]  (5) 基础中的基础——变量和常量 1.常量:在编译时其值能够确定,并且程序运行过程中值不发生变化的量. 通俗来说,就是定义一个不能改变值的量.既然不能变动值,那就必须 ...

  4. [.net 面向对象编程基础] (6) 基础中的基础——运算符和表达式

    [.net 面向对象编程基础] (6) 基础中的基础——运算符和表达式 说起C#运算符和表达式,小伙伴们肯定以为很简单,其实要用好表达式,不是一件容易的事.一个好的表达式可以让你做事半功倍的效果,比如 ...

  5. [.net 面向对象编程基础] (7) 基础中的基础——流程控制语句

    [.net 面向对象编程基础] (7) 基础中的基础——流程控制语句 本来没有这一节的内容,后来考虑到既然是一个系列文章,那么就尽可能写的详细一些,本节参考了网上朋友所写的例子,为的是让更多小伙伴学习 ...

  6. [.net 面向对象编程基础] (8) 基础中的基础——修饰符

    [.net 面向对象编程基础] (8) 基础中的基础——修饰符 在进入C#面向对象核心之前,我们需要先对修饰符有所了解,其实我们在前面说到变量和常量的时候,已经使用了修饰符,并且说明了变量和常量的修改 ...

  7. 从头开始学JavaScript 笔记(一)——基础中的基础

    原文:从头开始学JavaScript 笔记(一)--基础中的基础 概要:javascript的组成. 各个组成部分的作用 . 一.javascript的组成   javascript   ECMASc ...

  8. C++ 基础中的基础 ---- 引用

    C++ 基础中的基础 ---- 引用 引用的概念:引用变量是一个别名,也就是说,它是某个已存在变量的另一个名字.一旦把引用初始化为某个变量,就可以使用该引用名称或变量名称来指向变量.比如: int n ...

  9. python之基础中的基础(一)

    python是一个效率极高的语言,现在市面上的机器学习大部分是由python和R语言完成,所以在不久之前小仙心中便种下了学习python的想法.下面是这一个月多月以来学习的总结,都是基础中基础了. 1 ...

  10. 【Python】编程小白的第一本python(基础中的基础)

    一.变量 如果不知道变量是什么类型,可以通过type()函数来查看类型,在IDE中输入: print(type(word)) 另外,由于中文注释会导致报错,所以需要在文件开头加一行魔法注释 #codi ...

随机推荐

  1. java helloworld demo

    大二的时候写过 web 仅限于 idea 配合 springboot, 学习的时候需要写个 java demo 或者算法, 居然不知道怎么写了 首先创建一个文件夹, 写上你的代码, 因为是demo, ...

  2. 【亲妈教学】配置Gzip压缩,含前后端步骤

    前言 在使用 vite 进行项目打包时,默认已经帮我们做了一些优化工作,比如代码的压缩,分包等等. 除此之外,我们还有一些可选的优化策略,比如使用 CDN ,开启 Gzip 压缩等.本文会介绍在 vi ...

  3. vue + element-ui + vue-clipboard2 实现文字复制粘贴功能与提示

    1.在所在项目下安装插件 npm install vue-clipboard2 --save 2.在所在项目的index.js注入vue-clipboard2 import VueClipboard ...

  4. 服务调用OpenFeign

    1.介绍 ①什么是OpenFeign OpenFeign是在Feign的基础上进行了加强 使用在Client-Consuemr(消费者客户端) Fiegn是一个声明式的Web服务客户端,让编写Web服 ...

  5. 大三末java实习生一面凉经

    在南京投了一些小公司,想找个实习,因为知道自己很菜,就收到了一家公司的面试. 面试一般在线上进行,我是在腾讯会议上进行的.面试官其实挺好的,一般不会为难你,因为他知道你是在校生不会懂那么多企业的技术. ...

  6. 2021级《JAVA语言程序设计》上机考试试题7

    现在是学生查看,重置密码,原来是搜索,现在直接浏览,直接重置密码,改了下 代码如下: <%@ page language="java" contentType="t ...

  7. 继承与多态 动手动脑3方法覆盖(override)”的要点

    方法覆盖(override)"的要点 方法覆盖要求子类与父类的方法一模一样,否则就是方法重载(overload)! 在子类中,若要调用父类中被覆盖的方法,可以使用super关键字. 以下子类 ...

  8. Backbone 网络-ResNet 论文解读

    摘要 残差网络(ResNet)的提出是为了解决深度神经网络的"退化"(优化)问题. 有论文指出,神经网络越来越深的时候,反传回来的梯度之间的相关性会越来越差,最后接近白噪声.即更深 ...

  9. CCRD_TOC_2008年第1期

    中信国健临床通讯 2008年第1期 目 录   类风湿关节炎 1 一种新型.实用的RA活动度评估方法:完成评估只需三分钟 Fleischmann RM, Schiff MH, Keystone EC, ...

  10. CSS transform: scale()

    前言 transform属性允许你旋转,缩放,倾斜或平移给定元素.其中scale(x, y)就是实现元素缩放的属性值. scale(x, y)的 x 乘以原本元素的 x:y 乘以原本的元素 y,就可以 ...