列表(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 ,如需转载请自行联系原作者