您的位置:首页 > 编程语言 > Python开发

Python基础语法之内置的数据类型list和tuple

2017-08-13 20:56 603 查看
声明:本文基于廖雪峰老师的Python教程。

list列表:

list中可以包括其他的list,从而构成二维数组,甚至更高维的数组

list中的数据类型可以不同,如

>>>uname = ['123', 123, True]

>>>uname

['123', 123, True]

包含字符型,整形,和布尔型

list中元素也是从0开始计数,其最后一个元素可用-1表示,以此类推,倒数第二个,第三个可以用-2,

-3表示

注意list元素表示的越界问题

list越界会提示:

IndexError: list index out of range

用len()函数可以获取list的元素个数,下标最大值小于这个数

append() 将元素追加到list末尾

uname.append('name')

pop() 删除list末尾元素

uname.pop()  则删除’name ’

insert() 在指定位置插入元素 

传入两个参数,一个插入的位置,另一个是插入的元素,在指定位置插入元素,原位置及此后的元素后移

替换元素可直接赋值

s[1] = 'name'

若list中含有另一个list,可用s[1][2] 的形式访问list中list的元素

或直接p[1]来访问s[1][2] 位置上的元素

空list

>>>L = []

>>>len(L)

0

TUPLE

元组

tuple可以理解为不可以改变指针数量和指向的list

表示方法为

>>>a = (1)

>>>a

1

>>>b = (1,)

>>>b

(1,)

因为()在python中也有小括号的含义,所以在表示tuple时,tuple元素末尾最好带有逗号“ , ”

来表示这是一个元组(只有一个元素时必须带逗号)

在廖的教程中说明了为何tuple中带有list,list还可以改变元素

我的理解是,list也可以理解为tuple中的一个元素,tuple中指向list元素的内存早已分配好

结合C来理解就是指向list的指针已经确定,无法修改。但可以修改list中的任意元素

想比较list,tuple没有append(),insert(),pop()等操作,所以更加安全(无法修改)

同样的,可以用len()来获取tuple中的元素个数

习题:

L = [
['Apple', 'Google', 'Microsoft'],
['Java', 'Python', 'Ruby', 'PHP'],
['Adam', 'Bart', 'Lisa']
]

# 打印Apple:
print(L[0][0])
# 打印Python:
print(L[1][1])
# 打印Lisa:
print(L[2][2])
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python