[TOC]
# 使用list和tuple
### list
list 是一种有序的集合,可以随时添加和删除其中的元素。
~~~
classmates = ["A","B","C","D"]
print(classmates)
len(classmates) //获得元素的个数
classmates[0] 可以输出指定位置的索引
可以使用 classmates[-1] 做索引,直接获取最后一个元素
~~~
以此类推,可以获取倒数第二个,倒数第三个数据:`classmates[-2]` 和 `classmates[-3]`,但还是要注意越界问题。
* append("B") 添加到末尾
* insert(1,"jack") 插入到指定位置
* pop() 删除末尾的元素
* pop(1) 删除指定位置的元素
* 替换某个元素的值,直接赋值即可 list[1] = "new"
list 的数据类型可以不同,还可以把另外一个 list 当作元素使用,如果要获取其中的数据,可以利用二维数组的形式。
~~~
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
arry = ["A","B","C",[1,2,3,4,5]]
print(arry[3][0])
//result:
1
~~~
### tuple
有序列表,称为元组,tuple 和 list 非常类似,但是一旦初始化后,就无法更改。
tuple 没有增删改查的方法,当定义时就要规定好元素数据及数量 `t =(1,2)`
它也是支持负数索引的,`tuple[-2]`,就是倒数第二个位置的元素。
当你的 `tuple` 只有一个元素的时候,你必须要这样定义:`tuple = (1,)`,因为 `tuple =(1)` 会和数学小括号运算混淆。
有一个特殊情况:如果你的 `tuple` 是这样定义的:`tuple = (1,2, [2,3,"a"])` 那么你可以这样写:`tuple[2][0] = 6`,表面上我们修改了 `tuple` 的数据,实际上 `tuple[2]` 在内存中指向的 `list` 并没有发生变化,只是 `list` 中的数据发生了改变。