【python基础语法】元祖、字典、集合、数据类型的分类(第4天课堂笔记)
"""
列表:可变数据类型,对列表内部的元素可以进行修改
元祖: tuple,不可变数据类型,是不可以进行增删查改
元祖的方法:
count 查找元素的数量
index 从前往后依次查询元素的下标位置
字符串、列表、元祖总结:
序列类型:字符串、列表、元祖内部元素是有序的
通用操作:
下标取值
切片
获取元素的总数:len()
字典
字典中的数据,每条都是由键值对组成(key:value)
key:只能是不可变类型的数据(尽量用字符串)
value:可以是任意类型的数据
字典的增删查改:
不可变类型的数据:数值类型、字符串、元祖
可变类型的数据:列表、字典、集合
集合
# 如何区分可变不可变数据,定义一个集合,把数据放到集合中看会不会报错
""" # 元祖,元祖中的数据可以是任意类型
tu = (1, 2, 3)
print(type(tu)) # 元祖下标取值
print(tu[0]) # 元祖切片
print(tu[:2]) # 元祖定义的时候,注意点:
# 如何去定义一个空元祖
tu1 = ()
print(type(tu1)) # 元祖中只要一个元素时,如何定义,加个逗号
tu2 = (11,)
print(type(tu2))
# 通过tuple定义元祖
tu4 = tuple((11,))
print(type(tu4), tu4) # 列表 字符串 元祖 之间的转换
# list(): 可以将元祖 或者字符串 转换为 列表
l = [11, 22, 33]
s = "abc"
t = (1, 2, 3)
print(list(s))
print(list(t)) # tuple(): 可以将 列表 或者字符串 转换为元祖
print(tuple(s))
print(tuple(l)) # 元祖的方法
tu = (1, 2, 3, 4, 5, 6, 11, 22, 33, 12, 1, 3)
# cont:
print(tu.count(1))
# index:从前往后依次查询元素的下标位置
print(tu.index(11)) # 内置函数 len():获取数据的元素总数(长度)
print(len(l))
print(len(s)) student = [["余蓉", 18, '女'],
['黄晨',18, '男']
]
s = student[1]
print(s) # 字典的定义:{}
# 字典中的每一条数据由两部分组成:key:value(键值对)
s11 = [
{"name": "余蓉", "age": 18, "gender": "女"},
{"name": "黄晨", "age": 18, "gender": "男"},
]
# 拿到列表中的字典
s0 = s11[0]
s1 = s11[1]
# 拿到字典中的元素
print(s0["name"])
print(s1["name"]) # 测试用例的数据:接口地址:url 入参:data 预期结果:excepted
# 100条测试用例数据
case = {"url": "www.baidu.com", "data": 123, "excepted": 123456} dic = {"name":"小明"}
# 字典的定义
dic1 = {}
print(dic1,type(dic1)) # 字典的增删查改方法 # 字典中添加元素
# 通过键进行赋值 dic[key] = 值
dic["age"] = 18
print(dic)
# 字典中修改元素(字典中的key是唯一的,不能重复),
dic["age"] = 188
# 总结:字典添加和修改元素,无key则增,有则改 # 字典中查找元素
# 通过键去找对应的值(当查找的键不存在时,会报错)
n = dic["name"]
print(n)
# 第二种:dic.get(key)(当查找的键不存在时,返回的是None)
n = dic.get('name')
print(n) # 字典中删除元素
dic1 = {'aa':11,'bb':22,'cc':33}
# pop方法:指定键去删除键值对
print(dic1.pop("aa"))
print(dic1) # popitem:删除字典中的最后一个键值对(python3.6开始)
dic1.popitem()
print(dic1) # del关键字 进行删除
del dic1['bb']
print(dic1) # 字典中常用的其他的几个方法
dic2 = {'aa': 11, 'bb': 22, 'cc': 33}
# keys:获取所有的键
print(list(dic2.keys())) # values:获取所有的值
print(list(dic2.values())) # items:获取所有的键值对,每个键值对是一个元祖的形式
print(list(dic2.items())) # 字典创建的其他方式:
# 方式一
dic3 = {'name': "小明","age": 18,"gender": "男"}
# 方式二
dic4 = dict(name="小明",
age=18,
gender="男")
# 方式三
dic5 = dict([('aa',11),('bb',22),('cc',33)])
print(dic3)
print(dic4)
print(dic5) # 合并两个字典的方法:update,dic1更新到dic3里面去
dic3.update(dic1)
print(dic3)
# 在字典里面追加多个键值对
dic3.update({"ff": 11, "dd": 99})
print(dic3) # 集合:通过{}来表示,{1,2,3,4,5}
set1 = {1, 2, 3, 4, 5}
print(set1)
print(type(set1)) # 怎样定义空集合?
set2 = set()
print(type(set2)) # 集合中不能够存在重复的元素,
set3 = {1, 1, 2, 3, 4, 5, 6, 7, 8, 8}
print(set3) # 通过集合可以去除列表中的重复元素
li1 = [1, 2, 3, 4, 5, 6, 1, 2, 7, 8]
# 将列表转换为集合
s = set(li1)
# 然后将集合转换为列表
li2 = list(s)
print(li2) # 扩展 # 集合中的数据只能是不可变数据类型:字符串 元祖(其他类型会报错)
print({11, 22, 33, '', (1, 2, 3)}) # 集合和字典是无序的
# hash算法加密,按对应规则进行存储
# 字典中是对key进行hash
# 集合中是直接对集合中的数据进行hash
# 只有不可变类型的数据进行hash
【python基础语法】元祖、字典、集合、数据类型的分类(第4天课堂笔记)的更多相关文章
- 【python基础语法】多重循环嵌套,函数(第6天课堂笔记)
1.什么是函数?函数有什么作用? 函数都是有特定功能的,都是由一些有特定功能的进行封装完成的 2.已经学过了哪些内置函数?分别有什么作用? print:输出 input:输入 type:查询数据类型 ...
- python-列表元祖字典集合
列表 list = ["a", "b", "c", "d"]元祖 tup = (1, 2, 3, 4, 5 ) 1.元组 ...
- python 元祖字典集合
一.元祖 1.用途:记录多个值,当多个值没有改变的需求,元祖不能修改,但元祖里的数据的数据可以修改. 2.定义方式:在()内用逗号分隔开多个任意值. 思考:如果定义一个只有一个一个值的元祖. # t ...
- Python学习笔记---切片 列表 元祖 字典 集合
列表[1,2,3,2]#[] 元祖(1,2,3,2)#() 字典{1:2,3:2}#{} 集合{1,2,3,2}#{} 1,集合与列表的区别,集合里不能有重复元素 2.字典与集合的区别,都是用花括号表 ...
- 06 元祖 字典 集合set
元组 定义: ti=() print(ti,type(ti)) 参数:for可以循环的对象(可迭代对象) t2=tuple(") # ('1', '2', '3') <class 't ...
- python基础类型—元祖
元组 被称为只读列表,即数据可以被查询,但不能被修改,所以,字符串的切片操作同样适用于元组. 例:(1,2,3)("a","b","c") ...
- Python基础入门-元祖
其实,元组合列表的特性和使用几乎差不太多,今天我们重点来看下元组的一些操作和使用. 1.元祖的定义和特点 定义:元组是以小括号包围,元素以逗号分隔,不可变的序列之一. 特点: 1)元祖内的元素不可以增 ...
- python基础之元祖、嵌套,for循环、 enumerate、range的试用案例
元祖又叫做只读列表,可循环查询.可切片,元祖里的直接元素不能更改,但是若里面有嵌套的列表,则可以修改列表里的元素 tu = (1,2,3,'sun',[3,4,5,'cat']) tu[4][3] = ...
- python基础之元祖tuple
元祖是只读列表,不可哈希,可循环查询,可切片*儿子不能改,孙子可更改--元祖里面单个元素不能更改---元祖内列表可更改增:tu1+tu2查:tu1[index] tu1[start_index:end ...
- python基础--4 元祖
#元组,元素不可被修改,不能被增加或者删除 #tuple,有序 tu=(11,22,33,44,55,33) #count 获取指定元素在元祖中出现的次数 print(tu.count(33)) #i ...
随机推荐
- python文件内容处理(一)
综述:一定要理解光标移动的规则 ---------------------------------------------------------------------------第一部分基本操作- ...
- POJ_1564_dfs
题目描述: 每组数据给定一个大的数,和一系列降序的数值,要求列出不重复的数值中挑选的数的和为大数的方案,每一种方案里,每个数值最多只能使用一次. 思路: dfs基础题,每次记录大数和当前总和的差值,当 ...
- Codeforces 1138B Circus (构造方程+暴力)
题意: 给你两个01串,要你选n/2个位置,使得选的位置在s1中"1"的数量等于未选的s2中"1"的数量 n<=5000,1s 思路: 设两个串中出现&q ...
- sqlserver install on linux chapter two
The previous chapter is tell us how to install sqlerver on linuix Today, we will see how to make it ...
- 简化 Spring Boot 项目部署,Flyway 搞起来
虽然我之前录了一个微人事(https://github.com/lenve/vhr)部署视频(新版微人事部署教程来啦),但是由于这次升级涉及到了 Redis 和 RabbitMQ,所以在本地跑微人事还 ...
- postman简单接口测试
Postman简单接口测试 1. get请求: a. 选择get请求时,地址栏输入地址,如果需要添加参数,可以直接在地址栏加?后面写参数,也可以在点击params添加参数 b. 在headers中添加 ...
- Cacti 邮件 报警
一.使用cacti发一封测试邮件 1.使用第三方SMTP 访问 到达 设置——Mail 选项 设置如下: 1处填写收件箱地址 2.处填写发件箱地址 3.处填写smtp服务器地址 4处填写发件箱用 ...
- 大数相乘----C语言
/* 大数相乘: 因为是大数,乘积肯定超出了能定义的范围,因此考虑用数组存储,定义三个数组,分别存储乘数,被乘数和积. 规则与平常手算一样,从个位开始分别与被乘数的每一位相乘,但是有一点不同的是:我们 ...
- Python学习小记(1)---import小记
在这种目录结构下,import fibo会实际导入fibo文件夹这个module λ tree /F 卷 Programs 的文件夹 PATH 列表 卷序列号为 BC56-3256 D:. │ fib ...
- Java架构师必看,超详细的架构师知识点分享!
在Java程序员行业中,有不少Java开发人员的理想是成为一名优秀的Java架构师,Java架构师的主要任务不是从事具体的软件程序的编写,而是从事更高层次的开发构架工作.他必须对开发技术非常了解,并且 ...