在编程语言中,以某种方式组合起来的数据元素集合称为数据结构,python中最基本的数据结构为序列(sequence,简写seq)
Python中序列类型包括字符串、列表、元组、集合、字典。但集合、字典不支持索引、切片、相加、相乘操作

1、 序列索引

序列中,每个元素都有自己的编号(索引)。从起始元素开始,索引值从0开始递增
Python支持索引值为负值,从右往左,从索引值-1开始,依次为-1、-2、…

>>> strs = 'chinese'
>>> strs[0]
'c'
>>> lists = [1, 2, 5]
>>> lists[1]
2
>>> lists[-1]
5

2、 序列切片

切片操作可以访问一定范围内的元素,生成一个新的序列

语法格式:sname[start : end : step]
sname:序列的名称;
start:切片的开始索引位置,也可不指定,默认为 0
end:切片的结束索引位置(不包括该位置),如果不指定,则默认为序列的长度;
step:每隔几个位置(包含当前位置)取一次元素,如果省略step 的值,则最后一个冒号可以省略

>>> strs = 'chinese'
>>> strs[0:7:1]
'chinese'
>>> strs[1:3]
'hi'
>>> strs[:3]
'chi'
>>> strs[::]
'chinese'
>>> strs[::2]
'ciee'

3、 序列相加

两种类型相同的序列使用“+”运算符做相加操作,会将两个序列进行连接,但不会去除重复的元素
类型相同的序列指的是同为字符串或同为列表或同为元组
>>> list1 = [1, 3, 5]
>>> list2 = [2, 4]
>>> list1 + list2
[1, 3, 5, 2, 4]

4、 序列相乘

使用数字 n 乘以一个序列会生成新的序列,内容为原来序列被重复 n 次的结果

与序列相关的内置函数

函数 描述
len(seq) 序列的长度
list(seq) 将序列转化为列表,不能将字典转换
str(seq) 将序列转化为字符串
sum(seq) 元素和,元素只能是数字
sorted(seq) 对元素进行排序
reversed(seq) 反向序列中的元素
>>> len(str1)
7
>>> list(str1)
['c', 'h', 'i', 'n', 'e', 's', 'e']
>>> str([1, 3, 5])
'[1, 3, 5]'
>>> sum([1, 3, 5])
9
>>> sorted([1, 5, 3, 2])
[1, 2, 3, 5]
# reverse参数为True降序,默认升序
>>> sorted([1, 5, 3, 2], reverse=True)
[5, 3, 2, 1]
>>> list(reversed([1, 3, 5]))
[5, 3, 1]

python笔记 - 序列(四)相关推荐

  1. python索引右往左_[Python笔记]序列(一)索引、分片

    Python包含6种内建序列:列表.元组.字符串.Unicode字符串.buffer对象.xrange对象. 这些序列支持通用的操作: 索引 索引是从0开始计数:当索引值为负数时,表示从最后一个元素( ...

  2. python的序列类型及其特点_Fluent Python 笔记——序列类型及其丰富的操作

    序列的分类 Python 标准库用 C 语言实现了丰富的序列类型的数据结构,如: 容器序列(能存放不同类型的数据):list.tuple.collections.deque 等 扁平序列(只容纳同一类 ...

  3. python笔记(四)

    1. 文件操作 file operation open(...)  打开一个文件返回一个流对象 open(file, mode='r', buffering=-1, encoding=None, er ...

  4. python 分数序列求和公式_Python分数序列求和,编程练习题实例二十四

    本文是关于Python分数序列求和的应用练习,适合菜鸟练习使用,python大牛绕行哦. Python练习题问题如下: 问题简述:有一分数序列:2/1,3/2,5/3,8/5,13/8,21/13 要 ...

  5. python慕课笔记_MOOC python笔记(三) 序列容器:字符串、列表、元组

    Python Python开发 Python语言 MOOC python笔记(三) 序列容器:字符串.列表.元组 容器概念 容器是Python中的重要概念,分为有序与无序. 有序容器也称为序列类型容器 ...

  6. 动手深度学习笔记(四十五)8.1. 序列模型

    动手深度学习笔记(四十五)8.1. 序列模型 8.1. 序列模型 8.1.1. 统计工具 8.1.1.1. 自回归模型 8.1.1.2. 马尔可夫模型 8.1.1.3. 因果关系 8.1.2. 训练 ...

  7. Python学习笔记第四十八天(NumPy 矩阵库(Matrix))

    Python学习笔记第四十八天 NumPy 矩阵库(Matrix) 转置矩阵 matlib.empty() numpy.matlib.ones() numpy.matlib.eye() numpy.m ...

  8. python基础学习[python编程从入门到实践读书笔记(连载四)]:数据可视化项目第15章

    文章目录 matplotlib初学 基础绘图用法 随机漫步 使用Plotly模拟掷骰子 matplotlib初学 基础绘图用法 import matplotlib.pyplot as pltsquar ...

  9. fluent python 第二版_Fluent Python 笔记(二):序列基础

    目录: 本篇开始总结 Python 基本的数据结构,大部分情况下,这些数据结构就已经够用了,不需要重复造轮子.首先是序列及其相关的操作. 序列(Sequence) 标准库中提供了很多序列类型,都是C实 ...

最新文章

  1. 2019BATJ面试题汇总详解:MyBatis+MySQL+Spring+Redis+多线程
  2. live555 源码分析: SETUP 的处理
  3. Linux线程(六)
  4. Django进阶Model篇—数据库操作(ORM)
  5. 在Esxi 5.1虚机中安装OEM服务器系统
  6. three.js(七) 绘制到WebGLRenderTarget
  7. asp.net 开发知识小结【转】
  8. 吴恩达深度学习 —— 2.18(选修)逻辑回归损失函数的解释
  9. CStatic控件的基本使用
  10. HTML标签margin和padding的默认属性值
  11. 得力考勤机excel密码_可以修改原始考勤记录数据的是哪种人脸指纹考勤机?
  12. 翻译PDG官方教程:一个最简单的特效PDG流程(步骤详细)
  13. 使用vue-cropper
  14. Spring Security | 轻松搞定认证授权~
  15. google 学术一直 sorry 怎么办?
  16. 2021年四川高考成绩及录取结果查询,2021年四川高考录取结果查询时间及查询入口,录取结果多少号公布...
  17. python convert函数_Python pandas.DataFrame.tz_convert函数方法的使用
  18. Android 仿手机通讯录页面
  19. m3u8.sqlite文件转视频工具
  20. KNIME Explorer用户指南

热门文章

  1. 开发一番赏盲盒小程序怎么抽才能一发入魂呢
  2. 海康威视WEB3.0控件开发包提供的demo 调试
  3. MIPS - 反汇编 - 拆炸弹 - bomb
  4. CnOpenData短视频播主排名数据
  5. python import wx_python – 必须首先创建wx.app对象
  6. 绘制微型计算机系统组成结构图手绘,思维导图简单画法,电脑绘制和手绘一文精通...
  7. 第17课:转型的分类(图文篇)
  8. 计算机图文混合排版教学设计,图文表混合排版教学设计_百度文库(20页)-原创力文档...
  9. 初中信息技术计算机基础说课稿,初中信息技术说课稿《新建文件夹》
  10. 战五渣系列之八(绝杀AOP)