怎样的网站打开速度块北京房产网二手房出售
news/
2025/9/24 11:40:50/
文章来源:
怎样的网站打开速度块,北京房产网二手房出售,即将发布的新品手机,品质好价格低的广告词这一部分开始#xff0c;我们将讲解Python中的组合数据类型#xff0c;这里的知识十分基础而且重要#xff0c;也已经与C语言的框架愈差愈远。
目录
序列和索引
1、概念
2、切片操作
3、序列的其他操作
列表
1、概念
2、创建与删除
3、列表的操作
4、列表生成式
…这一部分开始我们将讲解Python中的组合数据类型这里的知识十分基础而且重要也已经与C语言的框架愈差愈远。
目录
序列和索引
1、概念
2、切片操作
3、序列的其他操作
列表
1、概念
2、创建与删除
3、列表的操作
4、列表生成式
5、二维列表
元组
1、概念
2、创建与删除
3、元组的操作
4、元组生成式
5、元组和列表的区别
字典
1、概念
2、创建与删除
3、取值与遍历 4、相关操作
5、字典生成式
集合
1、概念
2、创建
3、集合的操作
4、集合生成式
Python 3.11 新特性
1、结构模式匹配
2、字典合并运算符
3、同步迭代 序列和索引
1、概念
序列是一个用于储存多个值的连续空间每个值对应着一个整数编号被称为索引。
索引又被分为正向递增索引0、1、2、......、n-1 和反向递减索引-n、-n1、……、-1
我们可以简单地理解为C语言中的数列当然它实际的意义十分宽广。以下展示一份代码
shelloworld
for i in range(1, len(s)):print(i, s[i], end\t\t)# 输出结果1 e 2 l 3 l 4 o 5 w 6 o 7 r 8 l 9 ds[i]就是使用了索引这里还新用到了一个len()函数它可以返回序列的长度。我们以下要提到的列表、元组、字典和集合事实上都是序列。
2、切片操作
序列的切片操作是根据索引截取部分序列其语法结构为
序列[start:end:step]
start:开始索引包含默认从0开始
end:结束索引不包含默认到结尾此时包含最后一个元素
step:步长默认为1
例如切片 序列[0:5:2] 就是从第1个元素开始到第6个元素步长为2地取出了3个元素。
3、序列的其他操作
相加s1s2 直接拼接成新序列
相乘s*n 将s赋值n遍
x in s :若x为s的元素结果为True否则结果为False
x not in s:若x不是s的元素结果为True否则结果为False
len(s):序列s中元素的个数
max(s):序列s中元素的最大值 对字符的值要看ASCII码
min(s):序列s中元素的最小值
s.index(x):序列s中第一次出现元素x的位置 返回的是索引
s.count(x):序列s中出现x的总次数
很显然Python中有关序列的内置函数提供十分方便的操作方法这是初学C语言时所没有的。
列表
1、概念
列表是一列按特定顺序排列的元素属于可变序列。使用 [ ] 定义元素之间用 “ , ”逗号 分隔。
2、创建与删除
列表的创建有两种方法
①列表名[element1,element2,...]
②列表名list()
列表的删除
del 列表名
3、列表的操作
①序列的操作均可以对列表使用。
②enumerate函数
这个函数的作用是索引列表语法格式为
for index, item in enumerate(lst): 语句块
其中的index是序号item是元素这样做可以同时历边列表的序号及对应的1元素在语句块中即可进行输出等操作。
③特有操作
lst.append():在列表的最后增加一个元素
lst.insert(index,x):在列表的第index位置增加元素x
lst.clear():清除列表中的所有元素
lst.pop(index):删除第index位置的元素
lst.remove(x):将出现的第一个元素x删除
lst.reverse(x):将列表中的元素反转
lst.copy():拷贝列表中的所有元素生成一个新列表
列表的排序操作
lst.sort(keyNone, reverseFalse)
参数key为排序规则reverse为排序方式默认为升序True为降序。
也可以使用sorted()函数这将生成一个新的对象
sorted(iterable, keyNone, reverseFalse)
参数sorted为排序对象。
4、列表生成式
即创建列表的语法
①lst[expression for item in range]
②lst[expression for item in range if condition] 这是带条件的版本
我们用部分简单的代码演示
lst[item*item for item in range(1, 11)]
print(lst)
# 这是1到10的平方
lst[i for i in range(10) if i%20]
print(lst)
# 结果为0到10之间的偶数
5、二维列表
实际上就是元素为列表的列表我们完全可以将C语言中有关二维数组的知识迁移过来。
历边二维列表的格式
for row in 二维列表 行 for item in row: 列 pass
下例是用生成式生成4行5列的二维列表
lst[[j for j in range(5)] for i in range(4)]
元组
1、概念
下面介绍另一种序列类型元组。
元组属于不可变序列。用 ( ) 定义元素间用 “ , ” 分隔。
值得指出的是元组中只有一个元素时逗号也不能省略。
2、创建与删除
元组的创建有两种方法
①元组名(~, ~, ..., )
②元组名tuple()
删除
del 元组名
3、元组的操作
①对序列的基本操作都可以在元组上使用。
②访问与遍历
使用 [ ] 来索引且支持切片操作如 [0:3:2]。
4、元组生成式
t(expression for item in range)
生成的结果是生成器对象。
5、元组和列表的区别
相较于列表来说元组不可添加、删除、修改元素等。
元组访问处理的速度较快可以作为字典中的键。
字典
1、概念
序列类型字典的元素是按根据一个信息查找另一个信息的方式构成了“键值对”表示索引用的键和对应的值构成的成对关系。
字典是可变数据类型是无序的。
2、创建与删除
①d{key1:value1, key2:value2,......}
②用内置函数创建
1zip(lst1, lst2) 将两个列表一一对应其中前者为键。代码演示
lst1[1,2,3,4]
lst2[a,b,c,d]
zipobjzip(lst1,lst2)
print(zipobj)
2 ddict(key1value1, .......)
ddict(cat10,dog20)
print(d)
# 输出结果{cat: 10, dog: 20}
这是直接传参进行创建的方法参数中等号之前的元素是键。
如果两个元素的key相同value会被覆盖为位置靠后的一方。
元组也可以作为键可变数据类型不可以作为键。
③删除 del 简单来说都是用del进行删除。
3、取值与遍历
取出字典中某一项的valued[key] 或者 d.get(key)
字典的遍历既可以遍历每一对对应关系也可以同时遍历键和值
①for element in d.items(): pass
②for key, value in d.items(): pass
d{a: 1, b: 2, c: 3}for item in d.items():print(item)
#结果为
#(a, 1)
#(b, 2)
#(c, 3)
for key, value in d.items():print(key, value)
#结果为
#a 1
#b 2
#c 3 4、相关操作
d.keys() 获取所有的key
d.values() 获取所有的value
d.pop(key, default) 如果key存在就获取value并删除key-value对否则获取默认值
d.popitem() 随机获取一个key-value对结果为元组类型并且删除该key-value对
d.clear() 清空字典中所有的key-value对。
5、字典生成式
d{key:value for item in range}
d{key:value for key, value in zip(lst1, lst2)}
集合
1、概念
实际上这里的序列类型集合的概念与数学中的集合的概念是一致的。集合是无序、不重复的元素序列。
集合中只能储存不可变数据类型比如整数但列表不行
集合使用 { } 定义集合是可变数据类型。
2、创建
一定要使用set()函数创建集合直接用{}创建得到的是字典。
sset(helloworld)
print(s)
# 结果为{w, e, l, h, o, r, d}
3、集合的操作
①操作符
交 、并 |、差 -、 补 ^。概念与数学中的定义相同下面是一段代码演示
A{10,20,30,40,50}
B{10,20,40,80}
print(AB)
print(A|B)
print(A-B)
print(A^B)
②
s.add(x):若x不在s中则将x添加到集合s。
s.remove(x):x在集合中将其删除不在则报错。
s.clear():清楚集合中所有元素。
4、集合生成式
其实生成式的格式真没有什么差别下面是两种写法
s{i for i in range(1,10)}
s{i for i in range(1,10) if i%21} 讲解完了这几种类型我们可以做个简单的总结
数据类型序列类型元素是否可重复是否有序定义符号列表list可变序列可重复 有序 []元组tuple不可变序列可重复有序 ()字典dict可变序列 Key不可重复 Value可重复 无序{key:value}集合set可变序列不可重复无序 {}
Python 3.11 新特性
1、结构模式匹配
针对数据结构进行match匹配
语法结构
match data:
case {}: pass
case []: pass
case (): pass
case_: pass
2、字典合并运算符
字典合并运算符 “|”
用 | 符号可以直接将两个字典合并起来。ep merged_dictd1|d2
3、同步迭代
可以在match匹配中同时迭代两个数据。
match data1, data2: case data1,data2: pass
它常与zip函数一同使用。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/915658.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!