序列类型(元组()、列表[]、字符串““)、集合类型({}、set())
创始人
2024-03-17 05:28:34

 序列类型

        组合数据类型能够将多个同类型或不同类型的数据组织起来 ,通过单一的表示使数据操作更有序更容易。根据数据之间的 关系,组合数据类型可以分为三类:

                序列类型、集合类型和映射类型。

        • 序列类型是一个元素向量,元素之间存在先后关系,通过序号访问,元素之间不排他(不排他即允许有重复的)。

        • 集合类型是一个元素集合,元素之间无序,相同元素在集合中唯一存在。

        • 映射类型是“键-值”数据项的组合,每个元素是一个键值对,表示为(key, value)。 

 元组:()  列表:[]  字符串:' '或" "

        由于元素之间存在顺序关系,所以序列中可以存在相同数值但位置不同的元素。

        序列类型支持成员关系操作符 :

                in操作:可以判断元素是否在序列中

                len():长度计算函数

                分片([])操作:元素本身也可以是序列类型,通过下标访问元素。 

        Python语言中有很多数据类型都是序列类型,其中比较 重要的是:

                str(字符串)、tuple(元组)和list(列表)。

         •元组是包含0个或多个数据项的不可变序列类型。元组生成 后是固定的,其中任何数据项不能替换或删除。

         •列表则是一个可以修改数据项的序列类型,使用也最灵活 

s="abcdefg"
l=[[],[],"abcd"]
print(len(s))
print(s[0:3:2])
print(s.index('a'))#序列中第一次出现此元素的位置
print(s.count('a'))#序列中该元素出现的次数
if 'a' in s:

 

 s.index(x[,i[,j]]):

        序列s中从i开始到j位置中第一次出现元素x的位置

s.count(x):

        序列s中出现x的总次数 

元组 

        元组(tuple)是序列类型中比较特殊的类型,因为它一 旦创建就不能被修改。元组类型在表达固定数据项、函数多 返回值、多变量同步赋值、循环遍历等情况下十分有用。

        Python中元组采用逗号和圆括号(可选)来表示。 

#没有小括号的元组
x = 1, 2, 3, 4, 5
for i in x:print(i)#有小括号的元组
x = (1, 2, 3, 4, 5)
for i in x:print(i)#定义函数,用*b接受元组(2,3,4,5)
def f(a, *b):for i in b:a += ireturn a, b#返回一个元组,(a,b),而b也是一个元组#2,3,4,5是元组
m, n = f(1, 2, 3, 4, 5)
print(m, n)

集合类型 (大括号{},没有索引操作)

        集合类型与数学中集合的概念一致,即包含0个或多个数据项的无序组合。集合中元素不可重复,元素类型只能是固定数据类型,例如:整数、浮点数、字符串、元组等, 列表、字典和集合类型本身都是可变数据类型,不能作为集合的元素出现。

        由于集合是无序组合,它没有索引和位置的概念,不能分片,集合中元素可以动态增加或删除。集合用大括号({}) 表示,可以用赋值语句生成一个集合。 

#集合用大括号表示,可以放整数型,字符型,浮点型,元组
n={1,2,3,'a','b',12.3,(1,2,3)}
print(n)

set函数:

        可以把其他组合类型转换成集合类型

        由于集合元素是无序的,集合的打印效果与定义顺序可以 不一致。由于集合元素独一无二,使用集合类型能够过滤掉重复元素。set(x)函数可以用于生成集合。

l=(1,1,2,2,3,4,5)
#集合取消重复元素
s=set(l)
print(s)

 注意:可以利用转换集合操作过滤掉重复元素

 集合练习:

        重复元素判定。编写一个函数,接受元组作为参数,如果一个元素在元组中出现了不止一次,则返回True,但不要改变原来元组的值。同时编写调用这个函数和测试结果的程序。

def f(*t):#用*标识能接收多个参数if len(t)>len(set(t)):return Trueelse:return False
if f(1,1,2,3):print("repeat")
else:print("no repeat")

 

 &:交集  ^:两个集合中不是共同的元素  |:并集

 集合中的方法:

 s.add(x):往集合中添加元素

        注意:空集合的创建不能通过大括号直接创建 

s = set()#空集合不能通过大括号来创建
try:a = input()while a != '':s.add(eval(a))a = input()
except NameError:print("请输入数字")
print(s)

s.clear():清空集合的元素

相关内容

热门资讯

埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...