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. Python知识点总结篇(四)

    递归 特性 必须有明确的结束条件: 每进入深一层递归,问题规模比上层应有所减少: 递归效率不高,层次更多会导致栈溢出: def calc(n): print(n) if n // 2 > 0: ...

  2. leetcode的Hot100系列--347. 前 K 个高频元素--hash表+直接选择排序

    这个看着应该是使用堆排序,但我图了一个简单,所以就简单hash表加选择排序来做了. 使用结构体: typedef struct node { struct node *pNext; int value ...

  3. sizeof运算符和strlen()函数

    首先放上代码和运行结果.(在VC6.0上运行) #include<stdio.h> #include<string.h> int main(void) { char s1[]= ...

  4. Unity 代码提示符和UGUI屏幕自适应

    [Header]("提示字符") Canvas Scaler  屏幕自适应

  5. vue3 createComponent

    这个函数不是必须的,除非你想要完美结合 TypeScript 提供的类型推断来进行项目的开发. 这个函数仅仅提供了类型推断,方便在结合 TypeScript 书写代码时,能为 setup() 中的 p ...

  6. ELK学习笔记之Logstash不停机自动重载配置文件

    0x00 自动重新加载配置 为了可以自动检测配置文件的变动和自动重新加载配置文件,需要在启动的时候使用以下命令: ./bin/lagstash -f configfile.conf --config. ...

  7. Java函数式编程

    函数式编程 从JDK1.8开始为了简化使用者进行代码的开发,专门提供有lambda表达式的支持,利用此操作形式可以实现函数式的编程,对于函数编程比较著名的语言是:haskell.Scala,利用函数式 ...

  8. (四) Docker 使用Let's Encrypt 部署 HTTPS

    参考并感谢 周花卷 https://www.jianshu.com/p/5afc6bbeb28c 下载letsencrypt镜像(不带tag标签则表示下载latest版本) docker pull q ...

  9. windows上git clone命令速度过慢问题的解决

    在windows上用git clone 命令克隆一个仓库,速度非常的慢,但是浏览器访问github的速度确挺正常的,我也用了翻墙软件(SSR). git设置一下全局代理可以解决这个问题: git co ...

  10. Windows 创建 Redis 和 zookeeper 系统服务

    Redis 启动 Redis start cmd /k "cd/d c:\Redis-x64-3.2.100\&&echo start Redis &&red ...