python有几种容器,Python四种常用容器类型

一、字符串容器(string)

1.#for循环遍历字符串

My_str = 'hi,你好'

for v in My_str:

print(v,end='')

输出:

3a128e2d0a5bac49c9921cc58185eb65.png

2.#replace替换函数

my_string = '寻寻觅觅,冷冷清清,柒柒惨惨戚戚'

print(my_string) #还未替换前

print(my_string.replace('柒','凄',2)) #替换后重新生成一个字符串,2代表替换两次

输出结果:

941c9ecb57cda14882d7792847798246.png

字符串(string)特点:

1、字符串一旦定义不允许修改(赋值)

2、字符串容器里面的元素都是字符类型

字符串切片案例:(切片语法:左闭右开)

#-----------------------------方法一(find)

email = 'chenroubao@IT.com'

#如果查找到,返回子串第一次出现的位置;找不到就返回-1

position = email.find('@')

if position == -1:

print('不存在@!')

else:

left = email[:position]

right = email[position+1:]

print('左边是:',left)

print('右边是:',right)

print('逆序输出:',email[::-1])#-------逆序输出

输出结果:

3055ff1cbf78e578ddb36a15c6f2ac3f.png

#--------------方法二(split)

email = 'chenroubao@IT.com'

count = email.count('@')

if count == 1:

result = email.split('@')

print('左边是:',result[0])

print('右边是:',result[1])

else:

print('邮箱不合法!')

输出结果:

b9e3faaf2ec670e4c7a1a10e6d787594.png

二、列表容器(list)

1 #插入删除函数

2 my_list = []

3

4 #append在尾部插入元素

5 my_list.append(1)

6 my_list.append(2)

7 my_list.append(3)

8 my_list.append(4)

9 print(my_list) #[1,2,3,4]

10 #insert 在指定位置插入

11 my_list.insert(2,1)

12 print(my_list) #[1,2,1,3,4]

13 #pop 用于位置删除,默认删除最后一个元素

14 my_list.pop()

15 print(my_list) #[1,2,1,3]

16 my_list.pop(3)

17 print(my_list) #[1,2,1]

18 #remove 根据值删除,默认删除第一个出现的值

19 my_list.remove(1)

20 print(my_list) #[2,1]

21 #clear 清空

22 my_list.clear()

23 print('列表长度:',len(my_list)) #列表长度:0

1 #排序函数

2 #产生10个随机数

3 import random

4 list = []

5 i = 0

6 while i < 10:

7 random_shu = random.randint(1,10)

8 list.append(random_shu)

9 i += 1

10 print(list)

11 #sort排序 默认升序 (设置reverse=True降序)

12 list.sort()

13 print(list)

14 #reverse逆序输出

15 list.reverse()

16 print(list)

输出结果:

b346fc2408d30e8f2947e8a6b3cee666.png

#extend扩大 用于两个list合并

list = [1,2]

list2 = [3,4]

list.extend(list2)

print(list) #输出:[1,2,3,4]

列表(list)优缺点:

优点:

支持位置删除(尾部删除、指定位置删除)和值删除

尾部插入和删除效率更高,原因是:不需要移动元素

指定位置插入和删除效率较低,原因是:需要移动元素,元素越多,效率越低

缺点:

查找效率低(列表是序列式存储的,假如查找的元素位置在最后,那相当于把整个列表都查了一遍才找的出来,所以效率低。)

但是指定位置的查找效率是高的。

三、元祖(tuple)

#元祖的定义

tuple = ((1,),)

print(tuple) #输出: ((1,))

元祖(tuple)特点:

不支持修改,只支持遍历、查找

元祖内只有一个元素时,加,(逗号)

元祖比列表更节省空间

元祖是序列式容器,支持索引、切片操作

四、字典(dict)

def test():

#字典定义

my_dict = {'name':'obama','age':18,'sex':'男'}

print(my_dict.get('name1','key不存在,这里是默认值'))

#key不存在,就添加元素;存在就是修改元素

my_dict['score'] = 100

print(my_dict)

test()

输出结果:

c477b0051862e4ed56f4660edfe0afb1.png

1 #字典遍历

2 my_dict = {'name':'obama','age':18,'sex':'男'}

3 for val in my_dict:

4 print(val) #输出键,没有值

5 key = my_dict.keys()

6 print(list(key)) #按列表输出键

7 val = my_dict.values()

8 print(list(val)) #按列表输出值

9 key_value = my_dict.items()

10 print(list(key_value)) #输出键值对

11 for keyval in key_value:

12 print('key:',keyval[0],'value:',keyval[1])

输出结果:

e617039ee2b425fd69c5c762b3ad017a.png

1 # while循环遍历字典

2 my_dict = {'name':'obama','age':18,'sex':'男'}

3 list = list(my_dict.items())

4 i = 0

5 while i < len(list):

6 print('key:',list[i][0],'value:',list[i][1])

7 i += 1

输出结果:

1898f0cc661986220759773343bb29f3.png

字典(dict)特点:

字典是非序列式容器,不支持索引、切片

查找效率高,空间占用较大。以空间换时间

标签:容器,输出,Python,list,dict,key,print,my,四种

来源: https://www.cnblogs.com/zero-blogs/p/12918576.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值