py数据组合的类型

组合数据的类型:

						可以存储一组数据的类型,一种特殊的类型
						变量直接赋值相比较~ 变量中可以存储一个数据
						将一组数据赋值给变量,变量中可以存储多个数据
						【按照指定的方式组合】

1. 列表: list

			特点:按照有顺序的方式存储多个可以重复的数据。
			X=list()
			X=list([1,2,3,4,4])
			X=[1,2,2,3,4]
			数据操作
**增加:**
		append(obj):末尾追加数据
		insert(index, obj):指定位置增加数据
		extend(seq):末尾追加一组数据

**删除:**
			del x[index]:根据编号/下标/索引删除数据
			index必须是列表长度范围之内的编号~下标越界错误Index Out ….
			remove(obj):删除一个具体的数据
			pop():删除末尾的一个数据
			clear():清空列表中的所有数据
			del x :删除列表


**修改:**
		x[index] = new_value  通过下标/编号 直接给当前编号的数据重新赋值

**查询:**
			x[index] 通过编号直接查询该编号位置的数据
			for x1 in x:
				print(x1)  将x列表中的数据依次存放到x1中并且展示出来




**扩展:**
			x.count(obj):查看某个指定的数据obj在列表中出现的次数
			x.index(obj):查看某个指定的数据obj在列表中的位置[编号]
			x.sort():按照自然顺序排序
			x.reverse():翻转列表
			len(x):查看列表的长度;查看列表中是否有数据
			max(x)/min(x):针对列表中的数据进行最大值~最小值的判断
			copy: 复制一个有相同主数据的列表

2.元组: tuple

	**特点:**可以存储多个可以重复的有顺序的,不能修改的数据。
	**声明:**
				t = tuple()  声明一个空元组
				t = ()  声明一个空元组

				t = tuple([“hello”]) 声明包含一个元素的元组,不推荐
				t = (“hello”)  不是一个元组:扩展被当成了运算符号。
				t = (“hello”,) 这是一个包含单个元素的元组
			
				t = tuple([“hello”, “world”]) 声明包含多个元素的元组,不推荐
				t = (“hello”, “world”) 声明包含多个元素的元组
				t = “hello”, “world” 声明包含多个元素的元组
			
				tuple(a,b,c) 类型转换,将括号中包含的数据,转换成元组

**数据的操作:**
						无法增加、修改、删除  可以查找
					dir(tuple):查看元组都有哪些操作
				'count', :查看某个指定的数据,在元组中出现的次数
				'index':查看某个指定的数据在元组中的位置
				len(x ) 查看元组中元素的个数/总数
				max(x)/min(x):查看最大/最小值

3.集合:set

			特点:可以存放多个 不能重复 没有顺序 的可以修改数据
			
			**声明:**
					s = set() 声明一个空集合
					s = {}  ~ERROR 声明字典的语法
					s = set([1,2,3,4])  声明一个非空集合
					s = {1,2,3,4} 声明一个非空集合【推荐】
			
			**数据操作: 
			增加:**
					.add()
					
			**删除:**
					.pop()
					.remove()
					.clear()
					del s
			**查询:**
					for  x  in  y:
			
			**修改数据:**
						查询数据
						删除数据
						添加数据
			
			**集合之间的操作:**
						交集:intersection    intersection_update()
						并集:union		update()
						差集:difference   difference_update
			
			
			s1 = {1,2,3,4,5}
			s2 = {4,5,6,7,8}
			
			 **并集**
			s1.union(s2)
			   更新操作
			s1.update(s2)
			
			 **差集**
			s1.difference(s2)
			   更新操作
			s1.difference_update(s2)
			
			**交集**
			s1.intersection(s2)
			    更新操作
			s1.intersection_update(s2)

4.字典:dict

**特点:**
可以存放多组key-value 键值对 的 键不能重复 值可以重复的数据对。
**声明:**
		d = dict()   # 声明一个空字典【推荐】
		d = {}     #  声明一个空字典

**非空字典**
		d = {‘key’: ‘value’, ‘key2’: ‘value2’}【推荐】
			key对应的数据value
			key2对应的数据value2
		d = dict([(‘k1’, ‘v1’), (‘k2’, ‘v2’)])  相当于 d = {‘k1’:‘v1’, ‘k2’: ‘v2’}

		字典:在某些场合也称为映射,体现的是一一对应关系,可以通过key找到value

数据操作:

增加数据:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~·~~~~~~~

d=dict()
d["key"]="value"
print(d)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~·~~~~~~~

d["admin"]=["admin","123456"]
print(d)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~·~~~~~~~	

d['manager']={"username":"manager","password":"123"}
print(d)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

d.setdefault("root","123456")
print(d)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~·~~~~~~~

查找数据:

通过key查询value值
print(d["admin"])
print(d.get("manager"))

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~·~~~~~~~

查询字典中的key值
print(d.keys())
________________________________________

 查询字典中所有的value值
print(d.values())

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~·~~~~~~~

查询字典中的所有item[条目、键值对]值
print(d.items())
________________________________________
![在这里插入图片描述](https://img-blog.csdnimg.cn/20190122212254747.png)
# 循环遍历keys()
# for x in d:
for x in d.keys():
    print(x, '----', d.get(x))

________________________________________

![在这里插入图片描述](https://img-blog.csdnimg.cn/20190122212331809.png)
# 循环遍历 键值对
for k, v in d.items():
    print(k, '---items()--', v)
________________________________________

修改:

d['admin'] = 'admin'
print(d)

________________________________________

d['manager']['password'] = 'xxxxxxx'
print(d)

删除:

# 删除一个指定key值的键值对数据
d.pop('admin')
print(d)

________________________________________

# 随机删除一个
print(d.popitem())
print(d)

________________________________________

# 清空字典
d.clear()
print(d)
________________________________________

# 拓展:成员运算符
print('manager' in d)
# 判断指定的数据是否包含在字典的key中

________________________________________

print('administrator' in d)
# 判断指定的数据是否包含在字典的key中

5.笔试题:

1.下列变量赋值中,错误的是:
	A. age = 12   B. names=tom,jerry  C.gender, age=’男’, 18  		D. 8phone = 18888888888

	注意问题:变量的连续赋值
	a, b = 10   因为整数不能循环~将10赋值给a,~剩下的数据不能循环赋值~b出现了TypeError类型错误
	a, b = “hello”  字符串可以循环,h可能赋值给了a,e可能赋值给了b~,后续的数据没有变量可以赋值了,出现了ValueError值错误~太多的数据。
	a, b=”he”  将一个字符串赋值给多个变量~这个字符串就会循环赋值【拆分】
	a, b=”hello”, “world” 将多个字符串赋值给多个变量,每个字符串都会赋值给一个变量
	a, b = “hello”, “world”, “jerry”
	a, b, c = “hello”, “world”


2.	下列元组声明中,错误的是(多选):
A. x = tuple((1,2,3,4,5))
B. x = (1000)    语法给变量赋值了一个整数,不是一个元组
C. x = (tuple(1,2,3,4))  语法错误
D.x = tuple(1,2,3,4,5) 语法错误
E. x = tuple([1,2,3,4,5])
F. x = (True,)

3.声明了一个元组x = ([1,2], “hello)下列元组操作中,操作错误的是:(多选)
A. print(x[2])  		语法错误  没有索引2
B. print(x[0])
C. x[1] = “world”			元组不能修改
D. x[0][1] = 10
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值