6.2 序列类型及操作

六、组合数据类型

  • 6.1 集合类型及操作
  • 6.2 序列类型及操作
    • 元组类型、列表类型
  • 6.3 实例9:基本统计值计算
  • 6.4 字典类型及操作
  • 6.5 模块5:jieba库的使用
  • 6.6 实例10:文本词频统计

方法论

  • python三种主流组合数据类型的使用方法

实践能力

  • 学会编写处理一组数据的程序

6.2 序列类型及操作

单元开篇

  • 序列类型定义
  • 序列处理函数及方法
  • 元组类型及操作
  • 列表类型及操作
  • 序列类型应用场景

序列类型的定义

序列是具有先后关系的一组元素

  • 序列是一维元素向量,元素类型可以不同
  • 元素间由序号引导,通过下标访问序列的特定操作

序列是一个基类类型

  • 序列类型:字符串类型、元组类型、列表类型

序列类型通用操作符

操作符及应用 <center>描述</center>
x in s 如果x是序列s的元素,返回True,否则返回False
x not in s 如果x是序列s的元素,返回False ,否则返回True
s + t 连接两个序列s和t
s*n 或 n*s 将序列s复制n次
s[i] 索引,返回s中的第i个元素,i是序列的序号
s[i:j] 或 s[i:j:k] 切片,返回序列s中第i到j以k为步长的元素子序列
ls = ["python", 123, ".io"]
ls = ["python", 123, ".io"]

>>> ['python', 123, '.io']

序列类型通用函数和方法

函数和方法 <center>描述</center>
len(s) 如果x是序列s的元素,返回True,否则返回False
min(s) 返回序列s的最小元素,s中元素需要可比较
max(s) 返回序列s的最大元素,s中元素需要可比较
s.index(x) 或 s.index(x, i, j) 返回序列s从i开始到j位置中第一次出现x的位置,返回原始序列的序号
s.count(x) 返回序列s中出现x的总次数

元组类型及操作

  • 元组是一种序列类型,元组一旦创建不能被修改
  • 使用小括号()或tuple()创建,元素间用逗号,分隔
  • 可以使用或不使用小括号
def func():
    return 1, 2 # 返回的1,2,就是一个元组类型
creature = "cat","dog", "tiger", "human"
creature
>>> ('cat', 'dog', 'tiger', 'human')

color = (0x001100, 'blue', creature)
color
>>> (4352, 'blue', ('cat', 'dog', 'tiger', 'human'))
color[-1][2]
>>> 'tiger'

列表类型及操作

  • 列表是一种序列类型,创建后可以随意修改
  • 使用方括号[]或list()创建,元素间用逗号,分隔
  • 可以使用或不使用小括号
函数或方法 <center>描述</center>
ls[i] = x 替换列表ls第i个元素为x
ls[i:j:k] = lt 用列表lt替换ls切片后所对应元素子列表
del ls[i] 删除列表ls中第i元素
del ls[i:j:K] 删除列表ls中第到第j以k为步长的元素
ls += lt 更新列表ls,将列表lt元素增加到列表ls中
ls *= n 更新列表ls,其元素重复n次
ls = ['cat', 1, 2, 3, 4, 'tiger', 1024]
del ls[::3]

>>> [1, 2, 4, 'tiger']
函数或方法 <center>描述</center>
ls.append(x) 在列表ls最后增加一个元素x
ls.clear() 删除列表ls中所有元素
ls.copy() 生产一个新列表,赋值ls中所有元素
ls.insert(i,x) 在列表ls的第i个位置增加元素x
ls.pop(i) 将列表ls中第i个位置元素取出并删除该元素
ls.remove(x) 将列表ls中出现的第一个元素x删除
ls.reverse() 将列表ls中的元素反转
# 定义空列表lt
lt = []
# 向lt新增5个元素
lt += [1,2,3,4,5]
# 修改lt中第2个元素
lt[2] = 6
# 向lt中第2个位置增加一个元素
lt.insert(2,"7")
# 从lt中第1个位置删除一个元素
del lt[1]
# 删除lt中第1-3位置元素
del lt[1:4]
# 判断lt中是否包含数字0
0 in lt
# 向lt新增数字0
lt.append(0)
# 返回数字0所在lt中的索引
lt.index(0)
# lt的长度
len(lt)
# lt中最大元素
max(lt)
# 清空lt
lt.clear()

序列类型应用场景

  • 元组用于元素不改变的应用场景,更多用于固定搭配场景
  • 列表更加灵活,它是最常用的序列类型
  • 最主要作用:表示一组有序数据,进而操作它们

元素遍历

for item in ls: #列表类型
    <语句块>
    
for item in tp: #元组类型
    <语句块>

数据保护

  • 如果不希望数据被程序所改变,转换成元组类型
ls = ["cat","dog", "tiger",1024]
lt = tuple(ls)
lt

>>> ('cat', 'dog', 'tiger', 1024)

单元小结

  • 序列是基类类型,扩展类型包括:字符串、元组和列表
  • 元组()和tuple()创建,列表用[]和list()创建
  • 元组操作与序列操作基本相同
  • 列表操作在序列操作基础上,增加了更多的灵活性
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,491评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,856评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,745评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,196评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,073评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,112评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,531评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,215评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,485评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,578评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,356评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,215评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,583评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,898评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,174评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,497评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,697评论 2 335

推荐阅读更多精彩内容