```
print('--------------------------------------------------------')
# 2.2.4 Tuple(元组)# 元组与列表相似,数据元素可以为不同的数据类型,但元素数值无法修改,为不可变类型。格式:元组名(元素1,元素2,元素3,...)# 元组依然支持索引截取与拼接
# 实例
Tup1=('wdnmd',123,5+6j,1.433,'Python天下第一','dqz')
Tup2=('wd','nmd',251)
print(Tup1)
print(Tup1[0])
print(Tup1[0:])
print(Tup1[3:5:2])
print(Tup1+Tup2)
print(Tup1*2)
# 可以把字符串看作是一种特殊的元组# 错误实例 元组值无法修改# tup=(1,2,3,4,5)
# tup[0]=11 # 报错:TypeError: 'tuple' object does not support item assignment
# 虽然元组数值无法修改,但元组可以包含可变数据类型的元素例如List
# 实例
tup=(1,[2,'wdnmd'],'wdnmddqz')
print(tup) # 测试成功# 空白元组和单元素元组的创建tup=()
tup1=(1,) #单元素元组结尾需要加一个逗号print(tup)
print(tup1)
# 测试成功
# 小结string、list 和 tuple 都属于 sequence(序列)
1,与字符串一样,元组属于不可变类型
2,元组同样支持索引与截取
3,构造空元组与单元素元组特殊的语法规则
4,元组可以使用拼接符进行拼接# 2.2.5 set(集合)
# 基本功能:成员关系测试,删除重复数据 语法:集合名{成员1,成员2,成员3...}或用set()函数创建 语法:set(成员1,成员2,...)
# 空集合只能用Set()函数创建,因为{}用于创建空字典
# 实例
set1={'Alibaba','Tencent','Bytedance','Baidu','Pdd','Pdd'}
print(set1) # 重复数据自动覆盖(满足以前所学集合的基本定义)
# 关系测试
if 'Alibaba' in set1:
print("Alibaba在集合中!")
else:
print("Alibaba不在集合中!")
# set集合运算
#错误
# set2={'sdasfdfdgfgsada'}
# set3={'sdsafdanfmassands'}
#正确
set2=set('dadassdsa')
set3=set('dgmikotrk')
print(set2-set3) # 差集
print(set2|set3) # 并集
print(set2&set3) # 交集
print(set2^set3) # set2与set3中不同时存在的元素
# 测试完毕
# 集合小结
# 1,集合的两种创建方法:集合名{成员1,成员2,...} 集合名=set(成员1,成员2,...)
# 2,空集合只能通过set()函数的方法创建
# 3,只有通过set()函数创建的集合可以进行集合的运算
# 2.2.6 Dictionary(集合)
# 列表是有序的数据集合,字典是无序的数据集合,区别在于列表通过位序偏移存取,字典通过键来存取# 字典为一种映射类型,语法:字典名{key:value,...}
#key必须使用不可变类型,且同一个字典中key必须是唯一的
#实例
dict={}
dict['one']='wdnmd-dqz' # 通过键值为空字典赋值
dict[2]='lbwnb-pdd'
dict1={'wdnmd':'dqz',"姓名":"dukaoyang",'性别':'男'}
# 创建一个完整的字典
print(dict['one'])
# 输出键值one对应的值print(dict[2])
print(dict1) # 整个字典
print(dict1.keys()) # 键值
print(dict1.values()) # 数值
# 测试完毕
# 2.3 Python数据类型转换
# 通过函数进行数据类型的转换
# 2.3.1 int()函数语法:int(x,base) base为想要转换的进制数:base表示x的进制数,int()函数会将x转换为所对应的10进制数
# x为数字或字符串 功能:将字符串或数字转化为整型
a=int()
print(a) #不传入任何值,默认值为0
b=int(2.3)
print(b) # x为纯数字不能带有base参数
c=int('10',2)
print(c) # 输出为2: 2进制的1 0对应10进制2
d=int('123',8)
print(d) # 输出为83 :8进制的123对应10进制的83
错误实例 纯数字带base
er=int(10,2)
print(er) # TypeError: int() can't convert non-string with explicit base
# 测试完毕
# 2.3.2 float()函数
# 语法: class float([x]) x为整数或字符串
# 实例
e=float(20)
print(b) # 输出为20.0
f=float("100")
print(f) # 输出100.0
# 2.3.3 其他转换函数
# complex()函数:用于创建一个值为a+bj的复数,或者转化一个字符串或数字为复数,若第一个字符为字符串,则不需要指定第二个参数
# 语法:class complex(a,b) 返回一个复数 a为int,long,float,或字符串;b为int,long,float型
# 实例
g=complex(1,2) # 第一个字符为数字
print(g) # 输出为1+2j
h=complex('122') # 第一个字符为字符串
print(h) # 输出为122+0j
i=complex(2)
print(i) # 输出2+0j
j=complex('5+2j')
print(j)
# 测试完毕
# str(x) 将对象 x 转换为字符串
# repr(x) 将对象 x 转换为表达式字符串
# eval(str) 用来计算在字符串中的有效Python表达式,并返回一个对象
# tuple(s) 将序列 s 转换为一个元组 list(s) 将序列 s 转换为一个列表
# set(s) 转换为可变集合 dict(d) 创建一个字典。d 必须是一个 (key, value)元组序列。
# frozenset(s) 转换为不可变集合
# chr(x) 将一个整数转换为一个字符
# ord(x) 将一个字符转换为它的整数值
# hex(x) 将一个整数转换为一个十六进制字符串
# oct(x) 将一个整数转换为一个八进制字符串
print('---------------------------------------------------------')
```