Python中的序列操作

可变对象:列表、字典、集合

不可变对象:数值、字符串、元组、forzenset

1、序列的通用操作

(1)测试元素是否存在

x in S和x not in S,返回True或False

(2)加法和乘法

S1+S2或者S*N或者N*S(其中S1和S2是同一种序列类型)

(3)len()、max()和min()函数

len()返回序列的元素个数,min()和max()分别返回序列中最小、最大的元素。

(4)count()找出元素在序列中出现的次数

(5)索引取元素:S[i],i为从0开始的数值,可以取负数表示从尾部开始取。

(6)切片:

S[i:j]:从索引位i取到索引位j,不包括j

S[i:]:从索引位i开始取到最结尾

S[:j]:从最开头取到索引位j,不包括j

S[:]:从头取到尾,相当于拷贝了序列,但得到的是新序列

S[i:j:k]:k表示取元素时的步进间隔,默认为1,表示每个元素都取,如果为2,则表示取一个跳过一个

(7)找出第一个元素的位置:index(x,i,j):表示从序列中搜索元素x并返回第一次出现的x的位置,如果给定了i,则表示从索引位i开始搜索,给定了j则表示最多搜索到索引位为j的位置。如果找不到元素,将报错。

2、不可变序列的操作

相比可变序列,不可变序列的唯一操作是可以支持内置的hash()操作。

3、可变序列的操作

(1)s[i]=x 、s[i:j]=t 将序列中的元素替换成x或可迭代对象t

(2)s[i:j:k]=t 将序列中的元素替换成可迭代对象t,t的长度必须和s[i:j:k]的长度一样。

(3)del s[i]、del s[i:j] 删除序列中的元素

(4)del s[i:j:k] 删除序列中的某些元素,k为步长。

(5)s.remove(x):移除第一次出现的元素x

(6)s.clear():清空序列中的所有元素

(7)s.pop([i]):表示移除序列s中的第i个元素,并返回这个元素。没有参数时,默认移除最后一个元素

(8)s.append(x):向序列的尾部追加元素x

(9)s.extend(t)相当于s+=t,将t扩展到序列s的尾部

(10)s.insert(i,x):表示将x插入到序列中的i索引位置处

(11)s*=n 将序列s的元素重复n次追加到s的尾部

(12)s.copy():浅拷贝

(13)s.reserve():原地反转序列s

python中序列的操作的更多相关文章

  1. python中的赋值操作和复制操作

    之前一直写C#,变量之间赋值相当于拷贝,修改拷贝变量不会改变原来的值.但是在python中发现赋值操作本质是和C++中的引用类似,即指向同一块内存空间.下面通过一个例子说明: p=[0,1,2,3,4 ...

  2. python中的赋值操作

    参考:https://www.cnblogs.com/andywenzhi/p/7453374.html?tdsourcetag=s_pcqq_aiomsg(写的蛮好) python中的赋值操作“=” ...

  3. python中的日志操作和发送邮件

    1.python中的日志操作 安装log模块:pip install nnlog 参数:my_log = nnlog.Logger('server_log.log',level='debug',bac ...

  4. python中OS模块操作文件和目录

    在python中执行和操作目录和文件的操作是通过内置的python OS模块封装的函数实现的. 首先导入模块,并查看操作系统的类型: >>> import os os.name # ...

  5. Python中的字符串操作总结(Python3.6.1版本)

    Python中的字符串操作(Python3.6.1版本) (1)切片操作: str1="hello world!" str1[1:3] <=> 'el'(左闭右开:即是 ...

  6. Python中的json操作

    Python中的json操作 标签(空格分隔): python 编码 json 字符串前缀问题 字符串前缀可以有r,u r:表示原始(raw)字符串,比如'\n'不会被转义.常用于正则. u:表示un ...

  7. Oracle中序列的操作以及使用前对序列的初始化

    Oracle中序列的操作以及使用前对序列的初始化   一 创建序列 create sequence myseq start with 1 increment by 1 nomaxvalue minva ...

  8. Python中的切片操作

    python中的切片操作功能十分强大,通常我们利用切片来进行提取信息,进行相关的操作,下面就是一些切片的列子. 列如我们从range函数1-100中取7的倍数,函数及结果如下所示: >>& ...

  9. python中的句柄操作

    python中的句柄操作 制作人:全心全意 通过窗口标题获取句柄 import win32gui hld = win32gui.FindWindow(None,u"Adobe Acrobat ...

随机推荐

  1. MacBook Pro配置汇编开发环境

    配置开发环境 方法一: 打开命令行,输入指令which nasm查看nasm的安装路径,Mac系统默认安装了nasm.一般默认返回的路径是/usr/bin/nasm 接着输入指令alias nasm= ...

  2. Java CookieUtils

    Java CookieUtils /** * <html> * <body> * <P> Copyright 1994 JsonInternational</ ...

  3. mongoDB对没有字段的记录新增字段

    db.getCollection('ClassRecordOneDetail').updateMany({'synState':{'$exists':false}},{'$set':{'synStat ...

  4. Go内存分配器可视化指南【译】【精】

    当我第一次开始尝试理解 Go 语言的内存分配器时,整个过程让我抓狂.一切看起来都像一个神秘的黑盒子.因为几乎所有技术魔法(technical wizardry)都隐藏在抽象之下,所以你需要一层一层的剥 ...

  5. js调用浏览器下载

    $scope.Download = function (url) { var save_link = document.createElementNS("http://www.w3.org/ ...

  6. Git查看文件制定行区间的提交记录

    git blame -L , /dir/file/file.php 这里查看file文件下6610至6613行的修改记录

  7. activiti工作流(传智播客)

    1:工作流的概念   说明: 1) 假设:这两张图就是华谊兄弟的请假流程图  2) 图的组成部分:  A. 人物:范冰冰 冯小刚 王中军  B. 事件(动作):请假.批准.不批准     工作流(Wo ...

  8. MPSoc之Hello World学习笔记

    XILINX 新一代 SOC,Zynq UltraScale+ MPSOC 系列性能强悍无比,号称相比ZYNQ 7000系列每瓦性能提升5倍,一直想体验.近期因项目需要,入手了一套米尔的MPSoc开发 ...

  9. Flask框架 请求与响应 & 模板语法

    目录 Flask框架 请求与响应 & 模板语法 简单了解Flask框架 Flask 框架 与 Django 框架对比 简单使用Flask提供服务 Flask 中的 Response(响应) F ...

  10. Leetcode刷题python

    Two Sum 两数==target 方法二更好 题1,对时间复杂度有要求O(n),所以维护一个字典,遍历过的数值放在字典中,直接遍历时候查找字典中有没有出现差,查找字典时间复杂度是O(1),所以O( ...