元组(tuple)
为何要有元组?===>存多个值,对比列表来说,元组不可变,主要是用来读
定义:与列表类型相似,只不过[]换成(),元组是不可变类型所以可以当做字典的key
常用方法:
#!/usr/bin/env python3 # _*_ coding:utf-8 _*_ # @Time : 2017/08/31 # @Author : tony # @File : tuple_set # @Version : 1.0 # 弄个tuple尝尝 t = ('tony',28,'male',['a','b','c'],('e','f','g')) # () 定义 tuple ,此序列的元素一旦定了不可改变,元素的类型不限制。 print(t) # ('tony', 28, 'male', ['a', 'b', 'c'], ('e', 'f', 'g')) print(type(t)) # <class 'tuple'> ############################################################## # # 元组所以可以当做字典的key dict 的 key 必须是不可变类型 ############################################################## d = {(1,):'tony'} # 如果tuple里面就一个元素,记得用逗号结尾 print(d) # {(1,): 'tony'} print(type(d)) # <class 'tuple'> print(d[(1,)]) # 'tony' # tuple index goods = ('iphone','Thinkpad','sanxing','sony') print('iphone' in goods) # return bool #goods[1] = 'huawei' # tuple 元素不支持修改,硬来的话 #print(goods) # TypeError: 'tuple' object does not support item assignment # tuple items 可以是 可变元素 , 这样就可操作元素的元素 t = (1,2,3,['a','b','c']) # 内部元素是可变的类型 t[3][0] = 'A' # 操作元素的可变类型元素 print(t) # (1, 2, 3, ['A', 'b', 'c']) t[3].append(0) # 操作元素的元素(元素是可变类型) print(t) # (1, 2, 3, ['A', 'b', 'c', 0]) for k in enumerate(t): # enumerate() 返回序的元素和元素的下标 每一组用tuple 包起来 print(k) # (0,1) (1,2),(2,3),(3,['a','b','c']) print(k[1]) #
集合(set)
集合:可以包含多个元素,用逗号分割
作用:去重,关系运算
集合的元素遵循三个原则:
1、集合是可变类型但每个元素必须是不可变类型
2、没有重复的元素
3、无序
注意:集合的目的是将不同的值存放到一起,不同的集合间用来做关系运算,无需纠结于集合中单个值
定义:
PS: s = {'tony','Tony'}
重点及方法:
#!/usr/bin/env python3 # _*_ coding:utf-8 _*_ # @Time : 2017/09/01 # @Author : tony # @File : set_ # @Version : 1.0 print('