Python中的容器

什么是容器

线性表:有序的容器结构

数组(array):有连续的内存空间组成

链表(list):不连续的内存空间组成了逻辑结构

栈(stack):先进后出(FILO),后进先出(LIFO)

队列(queue):先进先出,后进后出

python中的list(列表):

底层的实现就是使用双向链表结构实现的!

定义list:

双向链表 有序,可变, 可操作: 插入(append,insert, extend),删除(remove, pop,任何位置),

通过弱数据类型语言的特点,直接将值赋值为一个变量
 方法1.   users = ['刘建宏', '刘帅哥', , '吴帅哥']

方法2.    users2 = list( ["周杰伦“,100,6.666] )

使用列表元素的方法:

    通过下标获取某个元素值
    注意:下标是从开始
    u2[3]        # 获取第四个u2中的值


获取列表长度:

len(链表名) #全局函数

列表的遍历:

方法一:利用for循环遍历列表

number = [1,100,50]
for i in number:
    print(i)

方法二:利用while循环遍历列表

number = [50,100,66,10]
index = 0
while (index <= len(number)):
    print(user[index])
    index += 1

列表的常见方法:

append(新元素)            # 在尾部追加新的元素

insert(index, 新元素)        # 在特定的位置插入新元素

clear()                # 清空列表

remove(元素)            # 通过元素本身删除元素,如果该元素不存在,则会提示抛出异常

pop(将要删除元素的相应下标)            # 可以通过位置删除元素,默认删除最后一个

count(元素)                # 统计元素在列表中出现的次数 

index(元素)                # 获取元素在列表中的第一个位置索引,如果没有该元素,则抛出异常

copy(无参数)                # 浅拷贝对象

extend(目标列表)                # 列表合并

reverse()                # 翻转列表元素顺序

sort()                # 排序列表元素(注意如果字符串与数字在同一列表中不能进行排序)

set(集合):

set的使用:

Hash表实现(哈希、散列表):无序、不能重复,存储一维无序对象

set的创建方式:

s = {元素1,元素2,……}  

#注意:如果创建s为set时没有初始化集合的值,则s不是set(集合类型)而是dict(字典)类型!!
#如下:
s = {} 
type(s)
<class 'dict'>

set是无序的不存在下标索引!!!

常见方法:

add(新元素)               # 添加新的元素

clear(无)                        #清空集合

copy(无)                        #浅拷贝集合

difference(目标集合)        # 差集

intersection(目标集合)        # 交集

union(目标集合)            # 并集

discard(目标元素)            # 通过元素本身删除元素,若该元素不存在则什么都不做(不报错)

remove(元素)        # 通过元素本身删除元素,如果该元素不存在,则抛出异常

pop()            # 随机移除元素

元组(tuple):

元组是一种不可变的数据类型(相当于C++中定义了一组宏常量),内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表。

元组是不允许更新的,而列表是允许更新的

定义元组:

t = (元素1,元素2,……)

常见方法:

count(目标元素)        #统计目标元素在元组中的个数

index(目标元素)        #找出目标元素(第一个)的索引下标

特别注意:

1.注意:不可变数据,如果包含了可变对象,该部分是可以变化的,如:
    t = (1,2,2,43,45,[1,3,4,54])
    t[5].append(1203)         #相当于在元组中的列表又增加了一个1203元素!

2.Python中 

 

二者区别在于如若定义的元组中只有一个元素时,要在该元素后面加一个逗号

否则python默认定义该数据类型为int而非元组!

dict(字典):

dict的定义:

key---value键值对

dict的创建:

方法一:  d = {"name":"相应的值”,“age”:“相应的年龄”,……}

方法二:  d2 = dict( {"name":"相应的值”,“age”:“相应的年龄”,……} )

键值对的元素访问:

d = {"name":"wh","age":19}    #创建字典
d.keys()        #访问所有关键词
d.values()      #访问所有值
d.items()        #访问所有键值对

常见方法:

d[key] = value        #插入(修改)

clear(无)                #清空键值对

copy(无)                #浅拷贝键值对

keys(无)                #访问所有关键词

values(无)                #访问所有值

items(无)                #访问所有键值对

get(关键词)                #通过关键词访问对应值

pop(key)            # 通过键删除键值对

popitem()            # 删除位于最后一项的键值对

	for key in 字典对象:
		print(key, 对象[key])
	
    for key in d:
		print(key, d[key]


	for key in d.keys():
	     print(key, d.get(key))

	for key, value in d.items():
	     print(key, value)

	for (key, value) in d.items():
	     print(key, value)

	for item in d.items():
	     print(item[0], item[1])

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值