python之列表、元组、字符串、集合、字典总结

本文总结了Python中的五种容器类型:列表、元组、字符串、集合和字典。分别介绍了它们在Python中的表现形式、可变性特点以及常用操作,如排序、随机抽取、求最大值与最小值。同时,给出了多个示例,包括洗牌、统计学生成绩、杨辉三角、去重、找出现次数最多的元素等应用场景。
摘要由CSDN通过智能技术生成

列表、元组、字符串、集合、字典总结

这周学习了列表、元组、字符串、集合、字典,五种容器类型,下面对五种容器类型做一个简单的总结,使人更好的去认识他们。

在python中的表现形式

列表(list)----------->[元素,元素,元素 ]
元组(tuple)-------->(元素,元素,元素)
字符串(str)----------> ‘字符数据’
集合(set)---------->{元素,元素,元素,元素}
字典(dict)---------->{键:值,键:值}
举例

# 列表
list1 = []     # 表示空列表
list2 = [1, 2, 3, 4]    # 定义列表用[],里面的元素可以是任何类型的数据
# 元组
tuple1 = ('apple', 'banana', 'grape')  # 定义元组用()
tuple2 = (100,)   # 一元组要加逗号
tuple3 = ()      # 空元组
print(tuple3, type(tuple3))
# 字符串
str1 = 'hello, world'  # 定义字符串,需要用 ' ', " ",或者是 """ """ 将单个字符或多个字符括起来
# 集合
set1 = {
   1, 2, 3, 4}  # 定义集合用{}
set2 = set()  # 创建空集合
# 字典
student1 = {
            # 由键和值组成,键和值用 :隔开
    'id': 1010,
    'name': '小明',
    'sex': 'True',
    'birthday': '2000-1-1'
}

可变性

1:列表字典是可变的,支持增,删,查,改的操作
其中列表支持下标运算.字典通过键找到与之对应的值并进行操作。
集合中的元素是可变的,只支持增,删,查,并且它是无序的不能通过下标来查找元素

2:元组字符串中的元素是不可变的,只支持查的操作。其中元组字符串可以通过切片索引的方式查找元素。

列表 字符串 元组 集合 字典
可变 不可变 不可变 可变,但是不能修改元素 字典是可变的,字典中的键必须是不可变
有序 有序 有序 无序,其中所有的元素都是不重复的 无序,通过键,或者值来进行查找

经常使用的一些方法

排序

经常使用于列表中,字典中也会用到。其中列表可用sortsorted,而字典
只支持sorted

list1 = ['1', '2', '3', '4']
list1.sort(key=int, reverse=True)  # reverse=True由高到低排序,指定排序按照int类型来排
print(list1)

stocks = {
   
    'AAPL': 191.88,
    'GOOG': 1186.96,
    'IBM': 149.24,
    'ORCL': 48.44,
    'ACN': 166.89,
    'FB': 208.09,
    'SYMC': 21.29
}
x = sorted(stocks, key=stocks.get, reverse=True)  # 通过字典的键的值来从大到小排序,最后输出的是字典的键
print(x)

如果不指定key,字典默认对字典的键进行排序.不指定reverse,默认排序为从小到大。

随机抽取和乱序,,求最大值与最小值

random.sample() 对列表进行无放回抽样
random.choices() 对列表进行有放回抽样
choice 函数可以从列表中选择一个元素
shuffle 函数打乱顺序
max()求最大值
min() 求最小值
count() 统计出现的次数
例子
用一个列表保存52张扑克牌,洗牌,按斗地主的发牌方式把牌发给三个玩家,多的3张牌给第一个玩家(地主),把每个玩家手上的牌显示出来

import random
kinds1 = ['♠', '♣', '♥', 
  • 6
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值