首先,什么是sequence(序列)操作?

  • 字符串的特性被称为sequence(序列)
H o w a r e y o u ?

就好像存储在一个个连续的单元格里面,每个单元格存储一个字符,每个字符就是一个元素;一个字符串,由若干个元素组成;

一列排下去,每个元素顺序存储在里面的,符合这种存储特性的,就是sequence;

sequence支持相同的操作

  • 位置索引 Index

    • 标记每个元素的位置
    • 用来获取元素
    • 从左到右,从0开始
    • 可以用正数表示,也可以用负数表示:最后一个元素也可以是a[-1]
    • 长度为n的字符串a,最后一个元素是a[n-1]

    • 索引也可以是表达式

    • 越界

  • 切片操作

    • 截取(slice)字符串的一部分内容

      • 和索引一样切片的操作符是 []
      • 参数有两个,用:隔开
      • string[begin:end] 从begin开始,到end结束,但是不包含end
      • string[begin:] 从begin开始,到字符串结束
      • string[:end] 从第一个字符开始,到end位置结束,但是不包含end

  • 用正数下标,还是用负数下标

根据情况来定

  • 获取字符串长度 len()

列表 list

  • 字符串 是一种sequence类型

    • 由一个个元素组成
    • 每一个元素是一个字符

  • 列表 也是一种sequence类型

    • 可以存储任何类型的数据,每个元素可以是任意类型

  • 列表元素获取(index)与切片(slice)操作

    • 包含列表的列表--元素获取

    • 获取列表中列表的元素

    • 切片--产生新对象,原来的对象不变

  • list是一个可变的有序表,所以,可以往list中追加元素到末尾(  append() ):

  • 把元素插入( insert ( index,元素值 ) )到指定的位置,比如索引号为2的位置:

  • 删除list末尾的元素,用 pop() 方法:

  • 删除指定位置的元素,用pop(i)方法:

元组 tuple

  • 元组 也是一种sequence类型
  • 元组 和 List 很相似,只有一个最大的不同--元组不能改变其组成元素( 元组是不可变的 )
  • 元组的创建和定义

 #4个元素

 #另一种定义方式

 #单个元素元组,只有一个元素的时候也会在元素后面写一个,逗号:以免误解为数学意义上的括号

 #单个元素元组

 #空元组

 #空元组

  • 看一个“可变的”tuple:

表面上看,tuple的元素确实变了,但其实变的不是tuple的元素,而是list的元素。tuple一开始指向的list并没有改成别的list,所以,tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。即指向'a',就不能改成指向'b',指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的!

最新文章

  1. Angular2学习笔记——路由器模型(Router)
  2. Java的生日
  3. getComputedStyle的简单用法
  4. iOS开发,用了ARC,引入非ARC的第三方,报错
  5. sql查询上一条记录和下一条记录
  6. jquery 实现邮箱输入自动提示功能
  7. Qt connect parent widget 连接父控件的信号槽
  8. 最简单的PC机串口通信程序
  9. Oracle角色
  10. 多维算法思考(三):AB组合问题
  11. hibernate之使用Annotation注解搭建项目
  12. golang的linux安装
  13. python之列表作为函数的参数
  14. 虚拟机安装 deepin Linux 注意事项
  15. JavaScript 中的对象深度复制(Object Deep Clone)
  16. 求二维数组的最大子数组———曹玉松&&蔡迎盈
  17. hive join on 条件 与 where 条件区别
  18. 2019年华南理工校赛(春季赛)--L--剪刀石头布(签到)
  19. 2017-12-18python全栈9期第三天第二节之str常用操作方法及for循环之判断字母数字组成
  20. csrf_token 跨站请求设置

热门文章

  1. gitlab之实战部署
  2. 在调用系统相册时,UIIMagePickerController使用中偷换StatusBar颜色的问题
  3. 软件测试人员必备的linux命令
  4. ES安装简记
  5. sf02_选择排序算法Java Python rust 实现
  6. spring生成EntityManagerFactory的三种方式
  7. PL/SQL实例1
  8. 什么是maven(一)
  9. MyEclipse配置Spring框架(基础篇)
  10. Alamofire-5.0.0 以上报错