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. [BZOJ5197] [CERC2017]Gambling Guide

    [BZOJ5197] [CERC2017]Gambling Guide 题目链接 https://www.lydsy.com/JudgeOnline/problem.php?id=5197 Solut ...

  2. C# 对象集合初始化

    一.自动实现的属性 public class Person { // C# 3之前我们定义属性时,一般会像下面这样去定义 // 首先会先定义私有字段,再定义属性来对字段进行访问 //private s ...

  3. 用HTML、CSS、JS制作圆形进度条(无动画效果)

    逻辑 1.首先有一个圆:蓝色的纯净的圆,效果: 2.再来两个半圆,左边一个,右边一个将此蓝色的圆盖住,效果: 此时将右半圆旋转60°,就会漏出底圆,效果:   然后我们再用一个比底圆小的圆去覆盖这个大 ...

  4. python入门基础思维导图

  5. Java知识回顾 (17)MySQL链接

    本部分介绍如何使用JDBC 连接 MySQL 数据库. 驱动包下载 Java 连接 MySQL 需要驱动包,最新版下载地址为:http://dev.mysql.com/downloads/connec ...

  6. Java知识回顾 (14)网络编程

    本资料来自于runoob,略有修改. 网络编程是指编写运行在多个设备(计算机)的程序,这些设备都通过网络连接起来. java.net 包中 J2SE 的 API 包含有类和接口,它们提供低层次的通信细 ...

  7. 使用Prometheus针对自己的服务器采集自定义的参数

    用一个简单的例子来说明. 我用express和http搭了一个最简单的服务器,监听在8081端口上. 在metrics endpoint上,我会打印出这个服务器从启动至今,服务了多少次请求.这里我只是 ...

  8. MSSQL镜像场景

    1.版本:一般MSSQL2016以下版本使用. 2.适用小数据库容量的异地备份:如果是数据库容量较大,产生的日志比较多:经测试,9G的数据库大小,镜像数月个日志大小达到400G,硬盘开销太大.

  9. 异常详细信息: System.MissingMethodException: 无法创建抽象类。

    asp.net mvc 在使用post向后端传送json数据时报异常,在路由配置中添加如下即可 public static void RegisterRoutes(RouteCollection ro ...

  10. 在CentOS 7上修改主机名的方法

    这次我们来讲解一下如何在CentOS 7环境上修改主机名 1.从VMware上登录CentOS 7的虚拟机,并以root用户登录. 2.查看未修改前的主机名 1>.我们可以通过文件hostnam ...