list

# 1.list() 把可迭代对象转换成list,即for循环遍历的可迭代对象
my_str = "abcdef"
new_list = list(my_str)
print(new_list) # ['a', 'b', 'c', 'd', 'e', 'f']
# 此处可以理解为是通过for循环遍历以后,然后存储到列表中,转元组同理

new_list = list(range(10)) # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

new_list = list(range(1,11,2)) # [1, 3, 5, 7, 9]
# 因为字典遍历出来得到是key,所以字典转列表得到就是
my_dict = {"key1":"value1","key2":"value2","key3":"value3"}
new_list = list(my_dict)
print(new_list) # ['key1', 'key2', 'key3']

new_list = ["小肥牛","哈哈","小肥牛"]
count_num = new_list.count("小肥牛")
print(count_num) # 返回列表中的元素"小肥牛"出现的次数,若元素不存在,返回0

# 字符串,元组也有count的功能,用法一致
new_str = "hahaha"
print(new_str.count("h"))

dict

# 创建字典的四种格式
my_dict = {"key1":"value1"}
my_dict = dict()
mydict = dict(key1=value1,key2=value2)

keys = ["key1","key2","key3"]
new_dict = {}.fromkeys(keys,"要给key指定的初始值")
print(new_dict) # {'key1': '要给key指定的初始值', 'key2': '要给key指定的初始值', 'key3': '要给key指定的初始值'}

# 可迭代类型转换为字典,容器内必须是以嵌套容器且由两个值才可以转换成字典,多余2个或少于两个直接报ValueError
my_list = [("key1", "value1"), ("key2", "value2")]
print(dict(my_list)) # my_list = [("key1", "value1"), ("key2", "value2")]
print(dict(my_list))

# 字典的成员运算,in ,not in 是判断key是否存在字典当中的

my_dict = {"key1":"value1","key2":"value2"}

# setdefault()方法
old_result = my_dict.setdefault("key1","若有key1,就返回对应的值,若没有就把key1添加到字典中,且返回定义的默认值")
print(old_result) # 因为key1存在,所有直接返回对应的value值--value1
result = my_dict.setdefault("key3","默认值")
print(result) # 默认值
print(my_dict) # {'key1': 'value1', 'key2': 'value2', 'key3': '默认值'}

集合set

# 只能存不可变类型,应用场景:去重,和关系运算(共同爱好,共同好友,共同粉丝,共同关注)
# 无序,且不可重复,用{1,2,3}表示,定义空的集合,必须用set()
# 也可用len()计算长度,in not in 判断是否存在,也可用于for循环
hobbies1 = {"吃饭", "睡觉", "打游戏", "学习"}
hobbies2 = {"吃饭", "睡觉", "看书"}

result = hobbies1 & hobbies2  # 取两个集合的交集
# hobbies1.intersection(hobbies2)
print(result) # {'睡觉', '吃饭'}

result = hobbies1 | hobbies2 # 取并集
# hobbies1.union(hobbies2)
print(result) # {'睡觉', '吃饭', '看书', '学习', '打游戏'}

result = hobbies1 - hobbies2 # 取差集,哪个集合在前,就取哪个集合独有的
# hobbies1.difference(hobbies2)
print(result) # {'打游戏', '学习'}

result = hobbies1 ^ hobbies2 # 取对称差集,也就是取出每个人分别独有的爱好
# hobbies1.symmetric_difference(hobbies2)
print(result) # {'学习', '打游戏', '看书'}


# 枚举出列表中的索引位置,enumerate("可迭代对象,如list,tuple")
li = ["a", "b", "c"] for i in enumerate(li):
# i的值为
# 0, 'a')
# (1, 'b')
# (2, 'c')
print(i) for index, value in enumerate(li):
# 此处解包
print(f"列表中索引位置{index}对应的值为{value}")
"""
列表中索引位置0对应的值为a
列表中索引位置1对应的值为b
列表中索引位置2对应的值为c
"""

最新文章

  1. 关于访问链接返回XML的获取数据
  2. python webdriver 自动化测试练习 1-- 在线调查
  3. 关于block使用的5点注意事项
  4. ios 图片尺寸
  5. MySQL慢查询(一) - 开启慢查询
  6. K60平台智能车开发工作随手记
  7. 洛谷 P5020 货币系统
  8. PHP迭代器:Iterator和IteratorAggregate
  9. 福州大学软件工程1816 | W班 第1次作业成绩排名
  10. Java开发中的23种设计模式
  11. 6月19 使用tp框架生成验证码及文件上传
  12. Java的运算符--与(&)、非(~)、或(|)、异或(^)详解
  13. Mac使用brew安装nginx,并解决端口访问权限问题
  14. kafka负载均衡相关资料收集(一)
  15. 求 pi 的近似值题型汇总
  16. 不同版本(2.3,2.4,2.5,3.0)的Servlet web.xml 头信息
  17. java 高精度 四则运算
  18. 面试之三:JVM类加载机制-类加载各阶段说明和类加载器
  19. PenMount Touch显示鼠标指针驱动安装
  20. python数据转换工具Into

热门文章

  1. 关于Copy On Write Array List,你会安全使用么
  2. 认识Chrome扩展插件
  3. 7个技巧让你写出干净的 TSX 代码
  4. dotnet 设计规范 · 数组定义
  5. .NET 7 SDK 对容器的内置支持
  6. 【设计模式】Java设计模式 - 单例模式
  7. 微信小程序-全局配置、组件、页面跳转、用户信息等
  8. 微信公众号商城、小程序商城、H5商城 实例 前后端源码
  9. 通过管理接口配置ProxySQL
  10. Traefik SRE 之使用 Prometheus 进行监控报警