元组的内置方法

元组内置函数用法

元组tuple,我们可以把它看做是 只读列表

  • 列表转换为元组: tuple=tuple(list) 例如: list=['Wjz','wjk','wz','hacker','beijing'] tuple=tuple(list) print(tuple) # 输出 ('Wjz','wjk','wz','hacker','beijing')

  • 字典转换为元组,元组中元素为字典的key: tuple=tuple(dict) 例如: dic={'wjz':1,'wjk':2} tuple=tuple(dic) print(tuple) # 输出 ('wjz', 'wjk')

  • 字符串转换为元组,字符串的每一个字符都为元组的元素: tuple=tuple(str) 例如: str='wjz wjk' tuple=tuple(str) print(tuple) # 输出 ('w', 'j', 'z', ' ', 'w', 'j', 'k')

1.在()内可以有多个任意类型的值,用逗号分隔元素,用于表示 多个东西

 name_list = ['qwesc','zxcsd','mkou','mkou','bdgyh','mkihgg','mkdfia','nmjigf']
 my_friend=tuple(name_list)  #把列表转化为元组
 print(f'my_friend:{my_friend}')
 my_best_friend = ('kang yuan') #默认定义元素为字符串型
 my_best_friend_tuple = ('jia','kang','yuan') #定义元素类型为元组
 print(f'type(my_best_friend):{type(my_best_friend)}')
 print(f'type(my_best_feiend_tuple):{type(my_best_friend_tuple)}')
 
 my_friend:('qwesc', 'zxcsd', 'mkou', 'mkou', 'bdgyh', 'mkihgg', 'mkdfia', 'nmjigf')
 type(my_best_friend):<class 'str'>
 type(my_best_feiend_tuple):<class 'tuple'>

2.常用操作+内置方法:常用操作和内置方法:

  1. 索引取值

  2. 切片(顾头不顾尾,步长)

  3. 长度len

  4. 成员运算in和not in

  5. 循环

  6. count

  7. index

1.索引取值

 name_tuple = ('qwesc','zxcsd','mkou','mkou','bdgyh','mkihgg','mkdfia','nmjigf')
 name_tuple[3]
 print(f"name_tuple[3]:{name_tuple[3]}")
 
 name_tuple[3]:mkou

2.切片 (顾头不顾尾,步长)

 name_tuple = ('qwesc','zxcsd','mkou','mkou','bdgyh','mkihgg','mkdfia','nmjigf')
 print(f"name_tuple[2:8:2]:{name_tuple[2:8:2]}") #取出索引值2-7,步长为2的元素
 print(f'name_tuple[0:5]:{name_tuple[0:5]}') #取出索引值0-4,步长为1的元素
 print(f'name_tuple[0:]:{name_tuple[0:]}')  #取出索引值0及之后,步长为1的元素
 print(f"name_tuple[:8]:{name_tuple[:8]}")  #取出索引值0-7,步长为1的元素
 print(f"name_tuple[:]:{name_tuple[:]}")   #取出所有的步长为1的元素
 print(f"name_tuple[::2]:{name_tuple[::2]}")  #取出所有步长为2的元素
 print(f"name_tuple[::-1]:{name_tuple[::-1]}")  #取出所有步长为 -1的元素
 
 name_tuple[2:8:2]:('mkou', 'bdgyh', 'mkdfia')
 name_tuple[0:5]:('qwesc', 'zxcsd', 'mkou', 'mkou', 'bdgyh')
 name_tuple[0:]:('qwesc', 'zxcsd', 'mkou', 'mkou', 'bdgyh', 'mkihgg', 'mkdfia', 'nmjigf')
 name_tuple[:8]:('qwesc', 'zxcsd', 'mkou', 'mkou', 'bdgyh', 'mkihgg', 'mkdfia', 'nmjigf')
 name_tuple[:]:('qwesc', 'zxcsd', 'mkou', 'mkou', 'bdgyh', 'mkihgg', 'mkdfia', 'nmjigf')
 name_tuple[::2]:('qwesc', 'mkou', 'bdgyh', 'mkdfia')
 name_tuple[::-1]:('nmjigf', 'mkdfia', 'mkihgg', 'bdgyh', 'mkou', 'mkou', 'zxcsd', 'qwesc')

3.长度len(计算元组中元素总的个数)

 name_tuple ,name_tuple2 = ('qwesc','zxcsd','mkou','mkou','bdgyh','mkihgg','mkdfia','nmjigf') ,('mhdsjh','jhhbxnhd')
 print(f'first_length:{len(name_tuple)}')
 print(f"second_lenght:{len(name_tuple2)}")
 
 first_length:8
 second_lenght:2

4.成员计算in 和not in

 name_tuple= ('qwesc','zxcsd','mkou','mkou','bdgyh','mkihgg','mkdfia','nmjigf')
 print(f"'band' not in name_tuple:{'band' not in name_tuple}")
 print(f"'band' in name_tuple:{'band' in name_tuple}")
 
 'band' not in name_tuple:True
 'band' in name_tuple:False

5.循环(for循环)

 name_tuple= ('qwesc','zxcsd','mkou','mkou','bdgyh','mkihgg','mkdfia','nmjigf')
 for mottery in name_tuple:
     print(mottery)
     
 qwesc
 zxcsd
 mkou
 mkou
 bdgyh
 mkihgg
 mkdfia
 nmjigf

6.count(计算元组中相同元素的个数)

 name_tuple= ('qwesc','zxcsd','mkou','mkou','bdgyh','mkihgg','mkdfia','nmjigf')
 print(f"name_tuple.count('mkou'):{name_tuple.count('mkou')}")
 
 name_tuple.count('mkou'):2

7.index(索引,用于指出元组中某一元素的索引)

 name_tuple= ('qwesc','zxcsd','mkou','mkou','bdgyh','mkihgg','mkdfia','nmjigf')
 print(f"first:{name_tuple.index('mkou')}")
 print(f"second:{name_tuple.index('bdgyh')}")
 print(f"threid:{name_tuple.index('mkdfia')}")
 
 first:2
 second:4
 threid:6

4.存一个值or多个值:一个值

5.有序or无序:有序

 name_tuple= ('qwesc','zxcsd','mkou','mkou','bdgyh','mkihgg','mkdfia','nmjigf')
 print(f"id:{id(name_tuple)}")

id:6439920

6.可变or不可变:不可变数据类型

 l = ['a', 'b', 'c']
 print(f"id(l[0]): {id(l[0])}")
 l[0] = 'A'
 print(f"id(l[0]): {id(l[0])}")
 
 id(l[0]): 6500288
 id(l[0]): 6614944

列表可变的原因是:索引所对应的值的内存地址是可以改变的

元组不可变得原因是:索引所对应的值的内存地址是不可以改变的,或者反过来说,只要索引对应值的内存地址没有改变,那么元组是始终没有改变的。

 t1 = (['a', 'b', 'c'], 'wc', 'office')
 
 print(f"id(t1[0]): {id(t1[0])}")
 print(f"id(t1[1]): {id(t1[1])}")
 print(f"id(t1[2]): {id(t1[2])}")
 
 t1[0][0] = 'A'
 print(f"t1[0][0]: {t1[0][0]}")
 print(f"id(t1[0]): {id(t1[0])}")
 print(f"t1: {t1}")
 
 id(t1[0]): 2704848
 id(t1[1]): 3072416
 id(t1[2]): 3074688
 t1[0][0]: A
 id(t1[0]): 2704848
 t1: (['A', 'b', 'c'], 'wc', 'office')

 

猜你喜欢

转载自www.cnblogs.com/zuihoudebieli/p/10852666.html