小白之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 ...
随机推荐
- Spring03-IOC-循环依赖的实现(Debug查看spring解决循环依赖的过程)
1 什么是循环依赖 如下,有类A和B,A中有一个类型为B的属性b,B中有一个类型为A的属性a,A和B相互依赖 public class A { private B b; public B getB() ...
- JAVA虚拟机05-内存溢出示例(jdk1.8)
1.JAVA虚拟机堆内存溢出OutOfMemoryError 1.1设置参数 -Xms20m -Xmx20m -XX:+HeapDumpOnOutOfMemoryError 最小堆的大小20m 最大堆 ...
- git分支的一些处理情况记录
一.开发分支(dev)上的代码更新后,要合并到 master 分支 git checkout dev #切换到dev分支 git pull #将远程更新的代码同步到本地 git checkout ma ...
- 亲测有效! TG Pro 实时温度工具 V2.7.6 for mac 破解版
亲测有效! TG Pro 实时温度工具 V2.7.6 for mac 破解版 TG Pro (Temperature Gauge Pro) 是一款专业显示你的Mac实时温度的软件,可以在系统内的菜单栏 ...
- Vue框架-03:JS的几种循环方式,Key值的解释,数组/对象的检测与更新,input事件,v-model数据双向绑定,过滤案例,事件修饰符,按键修饰符,表单控制
目录 前端开发之Vue框架 一.JS循环的几种方式 1.v-for可循环的变量 2.js的循环方式 二.Key值的解释 三.数组.对象的检测与更新 四.input事件 五.v-model双向数据绑定 ...
- LoginServlet类
import cn.itcast.dao.UserDao; import cn.itcast.domain.User; import javax.servlet.ServletException; i ...
- 数值的扩展方法以及新增数据类型BigInt
二进制和八进制表示法 ES6提供了二进制和八进制数值的新的写法,分别用前缀0b(或0B)和0o或(0O)表示 0b111110111 === 503 // true; 0o767 === 503; / ...
- Win10解决文件或文件夹属性选项中只有“常规“、“以前的版本”,没有“安全”、“共享”、“位置”的方法
问题介绍: 当我想要把"桌面"文件夹的路径改到其他盘的时候,通常我只需要对着"桌面"文件夹点击右键,在属性-位置的选项卡中更改路径即可:但是我发现我在对着&qu ...
- JZOJ 3242. Spacing
\(\text{Analysis}\) 最大值最小很容易想到二分答案 然后用 \(dp\) 检查 设 \(f_i\) 表示当前行最后一个为 \(i\) 时最优情况最大空格数是否小于 \(mid\) 若 ...
- vivado报错vivado 12-8300 launch hls failed please see vivado hls.log for details
报错: 解决方案: 1. Download the "y2k22_patch-1.2.zip" file attached to this page 2. Unzip the fi ...