3-Python3数据结构

Python3自身有4中内置的数据结构:列表、元祖、字典、集合

#列表    lb=['psy',22,'student']  
#元祖    yz='psy',22,'student'
#字典    zd={'name':'psy','age':22,'status':'student'}
#集合    jh={'psy','student',22}

一、列表

注:1)列表可修改,而字符串和元祖不能修改;2)列表有序

空列表:

a=[]

列表的函数方法:

a.append(3)           #此时a为[3]
a.extend([3,4,5])     #       [3,3,4,5]    添加一个列表序列
a.insert(1,'hello')   #       [3,'hello',3,4,5]
a.remove(3)          #       ['hello',3,4,5] 删除第一个出现的3,没有3则报错
a.pop()            #       ['hello',3,4]
a.pop(0)           #       [3,4]
a.index(4)          #结果为1    返回出现的第一个4的下标
a.count(3)          #结果为1    列表中元素3的个数
a.sort               #此时a为[3,4]    排序
a.reverse()        #此时a为[4,3] 反序
del a[:]           #此时a为[]    删除a列表所有元素
del a               #删除列表

二、元祖

空元祖:

t=()

元祖赋值:

t=(123,345)
t[0]   #结果为:123
t(0)   #报错

、字典

注:1)字典以关键字为索引,关键词可以是人已不可变类型,通常是字符串或者数值

      2)字典是无序的   键:值  组成的集合

     3)在同一个字典之中,关键词不能重复

空字典:

a={}

常规用法:

mail={'psy':'pansy_nuist@163.com','xk':'xk@main.com','dd':'dd@qq.com'}
print(mail['psy'])   #结果显示pansy_nuist@163.com

del mail['xk']
print(mail)       #结果显示{'psy': 'pansy_nuist@163.com', 'dd': 'dd@qq.com'}

a=list(mail.keys()) #将返回一个字典中所有关键字组成的无序列表
print(a)            #结果显示['psy', 'dd']

b=sorted(mail.keys()) #将返回一个字典中所有关键字组成的排序列表
print(b)              #结果显示['dd', 'psy']

# 构造函数可以直接从key-value对中创建字典
c=dict([('psy',22),('xk',22)])
print(c)         #结果显示{'psy': 22, 'xk': 22}
d=dict(psy=22,xk=22)
print(d)          #结果显示{'xk': 22, 'psy': 22}
#循环输出字典中的键值对:
for name,age in d.items():
    print(name,age)

四、集合

空集合:

A = set()     #【想要创建空集合,必须使用set()】

简单的使用:

basket={'apple','orange','apple'}
print(basket)                   #结果显示{'orange', 'apple'} 或者{'apple', 'orange'} 注意重复的元素只显示一个;且无序
print('apple' in basket)       #结果显示True
print('pear' in basket)        #结果显示False

集合的数学运用:

a=set('ababcdabca')
print(a)        #结果显示{'c', 'b', 'a', 'd'}
b={'a','b','m'}
print(b)        #结果显示{'b', 'a', 'm'}
print(a-b)    #{'c', 'd'}
print(b-a)       #{'m'}
print(a|b )       #{'c', 'd', 'b', 'a', 'm'}
print(a&b)       #{'a','b'}
print(a^b )      #{'c','d','m'}

注意:

1)想要创建空集合,必须使用set()

2)集合是无序的

3)集合中重复的元素只显示一个

 

转载于:https://my.oschina.net/pansy0425/blog/2987070

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值