python中列表常用操作

### 1.2 列表常用操作


* 在 `ipython3` 中定义一个 **列表**,例如:`name_list = []`
* 输入 `name_list.` 按下 `TAB` 键,`ipython` 会提示 **列表** 能够使用的 **方法** 如下:


```
In [1]: name_list.
name_list.append   name_list.count    name_list.insert   name_list.reverse
name_list.clear    name_list.extend   name_list.pop      name_list.sort
name_list.copy     name_list.index    name_list.remove 
```


| 序号 | 分类 | 关键字 / 函数 / 方法 | 说明 |
| --- | --- | --- | --- |
| 1 | 增加 | 列表.insert(索引, 数据) | 在指定位置插入数据 |
|  |  | 列表.append(数据) | 在末尾追加数据
|  |  | 列表.extend(列表2) | 将列表2 的数据追加到列表 | 
| 2 | 修改 | 列表[索引] = 数据 | 修改指定索引的数据 |
| 3 | 删除 | del 列表[索引] | 删除指定索引的数据 |
|  |  | 列表.remove[数据] | 删除第一个出现的指定数据 |
|  |  | 列表.pop | 删除末尾数据 |
|  |  | 列表.pop(索引) | 删除指定索引数据 |
|  |  | 列表.clear | 清空列表 |
| 4 | 统计 | len(列表) | 列表长度 |
|  |  | 列表.count(数据) | 数据在列表中出现的次数 |
| 5 | 排序 | 列表.sort() | 升序排序 |
|  |  | 列表.sort(reverse=True) | 降序排序 |
|  |  | 列表.reverse() | 逆序、反转 |


#### del 关键字(科普)


* 使用 `del` 关键字(`delete`) 同样可以删除列表中元素
* `del` 关键字本质上是用来 **将一个变量从内存中删除的**
* 如果使用 `del` 关键字将变量从内存中删除,后续的代码就不能再使用这个变量了


```python
del name_list[1]
```


> 在日常开发中,要从列表删除数据,建议 **使用列表提供的方法**


#### 关键字、函数和方法(科普)


* **关键字** 是 Python 内置的、具有特殊意义的标识符


```python
In [1]: import keyword
In [2]: print(keyword.kwlist)
In [3]: print(len(keyword.kwlist))
```


> 关键字后面不需要使用括号


* **函数** 封装了独立功能,可以直接调用


```python
函数名(参数)
```


> 函数需要死记硬背


* **方法** 和函数类似,同样是封装了独立的功能
* **方法** 需要通过 **对象** 来调用,表示针对这个 **对象** 要做的操作


```python
对象.方法名(参数)
```


> 在变量后面输入 `.`,然后选择针对这个变量要执行的操作,记忆起来比函数要简单很多


### 1.3 循环遍历


* **遍历** 就是 **从头到尾** **依次** 从 **列表** 中获取数据
    * 在 **循环体内部** 针对 **每一个元素**,执行相同的操作
    
* 在 `Python` 中为了提高列表的遍历效率,专门提供的 **迭代 iteration 遍历**
* 使用 `for` 就能够实现迭代遍历


```python
# for 循环内部使用的变量 in 列表
for name in name_list:


    循环内部针对列表元素进行操作
    print(name)


```


![002_forin循环流程图-w420](media/14972568611505/002_forin%E5%BE%AA%E7%8E%AF%E6%B5%81%E7%A8%8B%E5%9B%BE.png)




### 1.4 **应用场景** 


* 尽管 `Python` 的 **列表** 中可以 **存储不同类型的数据**
* 但是在开发中,更多的应用场景是
    1. **列表** 存储相同类型的数据
    2. 通过 **迭代遍历**,在循环体内部,针对列表中的每一项元素,执行相同的操作### 1.2 列表常用操作


* 在 `ipython3` 中定义一个 **列表**,例如:`name_list = []`
* 输入 `name_list.` 按下 `TAB` 键,`ipython` 会提示 **列表** 能够使用的 **方法** 如下:


```
In [1]: name_list.
name_list.append   name_list.count    name_list.insert   name_list.reverse
name_list.clear    name_list.extend   name_list.pop      name_list.sort
name_list.copy     name_list.index    name_list.remove 
```


| 序号 | 分类 | 关键字 / 函数 / 方法 | 说明 |
| --- | --- | --- | --- |
| 1 | 增加 | 列表.insert(索引, 数据) | 在指定位置插入数据 |
|  |  | 列表.append(数据) | 在末尾追加数据
|  |  | 列表.extend(列表2) | 将列表2 的数据追加到列表 | 
| 2 | 修改 | 列表[索引] = 数据 | 修改指定索引的数据 |
| 3 | 删除 | del 列表[索引] | 删除指定索引的数据 |
|  |  | 列表.remove[数据] | 删除第一个出现的指定数据 |
|  |  | 列表.pop | 删除末尾数据 |
|  |  | 列表.pop(索引) | 删除指定索引数据 |
|  |  | 列表.clear | 清空列表 |
| 4 | 统计 | len(列表) | 列表长度 |
|  |  | 列表.count(数据) | 数据在列表中出现的次数 |
| 5 | 排序 | 列表.sort() | 升序排序 |
|  |  | 列表.sort(reverse=True) | 降序排序 |
|  |  | 列表.reverse() | 逆序、反转 |


#### del 关键字(科普)


* 使用 `del` 关键字(`delete`) 同样可以删除列表中元素
* `del` 关键字本质上是用来 **将一个变量从内存中删除的**
* 如果使用 `del` 关键字将变量从内存中删除,后续的代码就不能再使用这个变量了


```python
del name_list[1]
```


> 在日常开发中,要从列表删除数据,建议 **使用列表提供的方法**


#### 关键字、函数和方法(科普)


* **关键字** 是 Python 内置的、具有特殊意义的标识符


```python
In [1]: import keyword
In [2]: print(keyword.kwlist)
In [3]: print(len(keyword.kwlist))
```


> 关键字后面不需要使用括号


* **函数** 封装了独立功能,可以直接调用


```python
函数名(参数)
```


> 函数需要死记硬背


* **方法** 和函数类似,同样是封装了独立的功能
* **方法** 需要通过 **对象** 来调用,表示针对这个 **对象** 要做的操作


```python
对象.方法名(参数)
```


> 在变量后面输入 `.`,然后选择针对这个变量要执行的操作,记忆起来比函数要简单很多


### 1.3 循环遍历


* **遍历** 就是 **从头到尾** **依次** 从 **列表** 中获取数据
    * 在 **循环体内部** 针对 **每一个元素**,执行相同的操作
    
* 在 `Python` 中为了提高列表的遍历效率,专门提供的 **迭代 iteration 遍历**
* 使用 `for` 就能够实现迭代遍历


```python
# for 循环内部使用的变量 in 列表
for name in name_list:


    循环内部针对列表元素进行操作
    print(name)


```


### 1.4 **应用场景** 


* 尽管 `Python` 的 **列表** 中可以 **存储不同类型的数据**
* 但是在开发中,更多的应用场景是
    1. **列表** 存储相同类型的数据
    2. 通过 **迭代遍历**,在循环体内部,针对列表中的每一项元素,执行相同的操作

 

posted on 2019-07-01 17:51  C_loren  阅读(169)  评论(0编辑  收藏  举报

导航