Python的元组和列表很相似,只是元组一旦定义就无法修改,比如定义一个学生的元组:
names = ('alex','jack') print(names)#('alex', 'jack') print(type(names))#<class 'tuple'>
也可以定义一个空的元组,定义的时候写空
name = () print(name)#()
如果要定义只有一个元素的元组必须加逗号。
name = (1,) print(name)#(1,)
如果不加逗号,那么你定义的元素1就只是一个数字,如果是字符串也只是一个字符串
name = (1) name2 = ('abc') print(name)#1 print(name2)#abc print(type(name))#<class 'int'> print(type(name2))#<class 'str'>
元组的取值和列表是一样的,直接利用数值所在的key值。
name = ('abc',1) print(name[0])#abc
元组中的元素可以是任意数据,包括列表
name = ('abc',['xiaowang','xiaoming']) print(name)#('abc', ['xiaowang', 'xiaoming'])
在元组列表的数据是可以修改,因为在元组中列表存放的只是地址的引用而已,但是元组指向列表的地址并没有改,改的只是列表而已。
name = ('abc',['xiaowang','xiaoming']) name[1][0] = 'michael' name[1][1] = 'jack' print(name)#('abc', ['michael', 'jack'])