一、列表
列表是按照特定顺序的排列组合,就像数学中的数列,列表中的元素具有⼀定的排列顺
序。
在Python中,列表用方括号[ ]来表示列表,比如:>>> a= ['Pyt hon','C','Java']
1、访问列表中的元素
索引开始:0
如果我们想要打印上述列表中Python,就需要我们访问列表中第一个元素,在Python中,列表的访问从0开始,索引数为元素的位置减去1,访问的元素位置放在方括号里面,如果我们想要访问第一个元素Python,则索引为0,即:
`>>> a= ['Python','C','Java']
>>> print(a[0])
Python `
或者,在Python中冶可以逆序访问,从后往前索引依次是-1,-2,...,比如
`>>> a = ['Python','C','Java']
>>> print(a[-3])
Python
`
2.** 修改列表元素**
在刚刚的列表中,如果我想把列表a中的第三个元素Java修改为R,则可以采用如下的命令:
`>>> a[2] = 'R'`#Java在原来的列表中位置为3,所以索引为3-1=2
直接用赋值的命令(=)来修改列表中的元素,修改后,再试着打印原来的列表,看有没有修改成功。
`>>> print(a)
['Python', 'C', 'R']
`
3.**在列表中添加元素:append() insert()**
在列表末尾添加元素
在刚刚的列表末尾添加元素Ruby,使用方法append()
`>>> a.append('Ruby')
>>> print(a)
['Python', 'C', 'R', 'Ruby']`
4. **在列表中添加元素**
如果想把元素Ruby1添加到Pyhon后面,则需要使用方法insert()
`>>> a.insert(1,'Ruby1')
>>> print(a)
['Python', 'Ruby1', 'C', 'R', 'Ruby']`
5.**从列表中删除元素:del语句,remove(),pop()**
知道元素的位置,删除某个特定位置元素用del语句
`>>> print(a)
['Python', 'Ruby1', 'C', 'R', 'Ruby']
>>> del a[1] #删除刚刚添加的Ruby1
>>> print(a)
['Python', 'C', 'R', 'Ruby']
`
不知道元素的位置,但是知道要删除什么元素,使用方法remove()
`>>> print(a)
['Python', 'C', 'R', 'Ruby']
>>> a.remove('Ruby')
>>> print(a)
['Python', 'C', 'R']
`
如果想删除这个值并且继续使用它,可以使用方法pop(),方法pop(),方法pop()可以将原有列表中特定元素删除,并且可以将之赋值给新的变量。
`
>>> print(a)
['Python', 'C', 'R']
>>> b = a.pop(0)
>>> print(b)
Python
`
二、组织列表
组织列表:方法sort(),函数sorted(),方法reverse()
-
列表的永久性排序sort()
使用方法sort()可以对列表进行永久性排序
>>> a = ['Python', 'C', 'R', 'Ruby']
>>> print(a)
['Python', 'C', 'R', 'Ruby']
>>> a.sort()
>>> print(a)
['C', 'Python', 'R', 'Ruby']
列表的临时排序sorted()使用函数sorted()可以对列表进行临时性排序
>>> sorted(a) #临时性排序
['C', 'Python', 'R', 'Ruby']
>>> print(a) #查看原来的列表排序,无改变
['C', 'Python', 'R', 'Ruby']
2.倒着打印列表
要倒着打印列表,可以用方法reverse(),方法reverse永久性的修改了排列的元素
>>> print(a)
['C', 'Python', 'R', 'Ruby']
>>> a.reverse()
>>> print(a)
['Ruby', 'R', 'Python', 'C']
3.确定列表的长度
可以用函数len()确定列表的长度
>>> print(a)
['Ruby', 'R', 'Python', 'C']
>>> len(a)
4
使用列表是避免索引错误,常见的索引错误包括:
1.忘记索引数是元素位置减去1
2.超出访问的列表索引
3.列表为空列表时,倒着访问列表a[-1]错误
注意:当发生索引错误时,可以将列表长度打印出来观察是什么错误
三、操作列表-创建数值列表
使用range()创建数字列表
可以使用函数range( ) 和函数list( ) 创建数字列表;
函数**range( )** 可以生成一系列的数字,里面第一个参数是起始值,第二个参数表示不超过这个值的终止值,第三个参数表示步长,默认为1;
函数**list( )** 可以将里面的参数转换为列表。
>>> c = list(range(1,10))
>>> print(c)
[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>>
对数字列表进行简单的统计计算
可以对数值列表进行简单的统计,例如最大值、最小值、总和。
>>> c = list(range(1,10))
>>> print(c)
[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> min(c)
1
>>> max(c)
9
>>> sum(c)
45
四、操作列表-使用列表的一部分
切片
切片,相当于把列表其中的一部分切出来。要创建切片,可以指定第一个元素和最后一个元素的位置,切片到达第二个元素的前一个元素停止切片,类似于函数range( )
>>> a = ['Python','Ruby','C','Java']
>>> print(a[1:3])
['Ruby', 'C']
>>> print(a[:2])#不指定第一个元素,从开始切片到第3个元素
['Python', 'Ruby']
>>> print(a[2:])#不指定最后一个元素,从第3切片到最后
['C', 'Java']
>>> print([-3:])#倒着切片,倒数第三个到最后一个
复制列表
使用切片的方法来复制列表,会产生两个列表。如果使用赋值(=)的方法来复制列表,第二个列表仅仅是指向第一个列表,并没有复制。
>>> a = ['Python', 'C', 'R', 'Ruby']
>>> b = a[:]
>>> a.append('CSS')
>>> print(b)
['Python', 'C', 'R', 'Ruby']
>>> print(a)
['Python', 'C', 'R', 'Ruby', 'CSS']
采⽤赋值的⽅法来复制列表
>>> a = ['Python', 'C', 'R', 'Ruby']
>>> b=a
>>> a.append('CSS')
>>> print(a)
['Python', 'C', 'R', 'Ruby', 'CSS']
>>> print(b)
['Python', 'C', 'R', 'Ruby', 'CSS']
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。