天天看点

python学习笔记列表和元组(三)

列表(list)

是Python以及其他语言中最常用到的数据结构之一。Python使用使用中括号 [ ] 来解析列表。列表是可变的(mutable)——可以改变列表的内容。

对应操作:

<code>1</code><code>、查([]切片操作)</code>

<code>name </code><code>=</code> <code>[</code><code>'tom'</code><code>,</code><code>'张三'</code><code>,</code><code>'joker'</code><code>,</code><code>'李四'</code><code>]</code>

<code>print</code><code>(name[</code><code>2</code><code>])</code>

<code>print</code><code>(name[</code><code>0</code><code>:</code><code>3</code><code>])</code>

<code>print</code><code>(name[</code><code>0</code><code>:</code><code>7</code><code>])</code>

<code>print</code><code>(name[</code><code>-</code><code>1</code><code>])</code>

<code>print</code><code>(name[</code><code>2</code><code>:</code><code>3</code><code>])</code>

<code>print</code><code>(name[</code><code>0</code><code>:</code><code>3</code><code>:</code><code>1</code><code>])</code>

<code>print</code><code>(name[</code><code>3</code><code>:</code><code>0</code><code>:</code><code>-</code><code>1</code><code>])</code>

<code>print</code><code>(name[:])</code>

输出:

joker

['tom', '张三', 'joker']

['tom', '张三', 'joker', '李四']

李四

['joker']

['李四', 'joker', '张三']

2、增(append,insert)

['tom', '张三', 'joker', '李四', '赵五']

['tom', '赵五', '张三', 'joker', '李四', '赵五']

3、改(重新赋值)

['zhaosi', 'kivue', 'joker', '赵七']

4、删(remove,del,pop)

['tom', 'joker', '李四']

['joker', '李四']

['张三', 'joker']

注:remove直接移除列表(也可以移除切片)、del可以做切片删除或者直接删除变量、pop默认删除列表最后一个元素(也可通过索引位置删除元素,pop方法是返回删除值)

5、列表内置方法

count 方法统计某个元素在列表中出现的次数

extend 方法可以在列表的末尾一次性追加另一个序列中的多个值。(extend 方法修改了被扩展的列表,而原始的连接操作(+)则不然,它会返回一个全新的列表。)

[1, 2, 3, 4, 5, 6]

index 方法用于从列表中找出某个值第一个匹配项的索引位置

reverse 方法将列表中的元素反向存放

sort 方法用于在原位置对列表进行排序(非数字时,按ASCII表顺序排序)

元组(tuple)

元组被称为只读列表,即数据可以被查询,但不能被修改,所以,列表的切片操作同样适用于元组。

元组写在小括号(())里,元素之间用逗号隔开。

虽然tuple的元素不可改变,但它可以包含可变的对象,比如list列表。

t = ()

t = ('asd',)

构造包含 0 个或 1 个元素的元组比较特殊,所以有一些额外的语法规则:

1 对于一些数据我们不想被修改,可以使用元组;

2 另外,元组的意义还在于,元组可以在映射(和集合的成员)中当作键使用——而列表则不行;元组作为很多内建函数和方法的返回值存在。

本文转自cqtesting51CTO博客,原文链接:http://blog.51cto.com/cqtesting/1958808 ,如需转载请自行联系原作者