列表
列表是按照特定顺序的排列组合,就像数学中的数列,列表中的元素具有一定的排列顺序。
在Python中,列表用方括号[ ]来表示列表,比如:
>>>a= ['Python','C','Java']
1
访问列表中的元素
索引开始:0
如果我们想要打印上述列表中的Python,就需要我们访问列表中的第一个元素。在Python中,列表的访问从0开始,索引数为元素的位置减去1,访问的元素位置放在方括号里面,如果我们想要访问第一个元素Python,则索引为0,即:
>>>a=['Python','C','Java']>>>print(a[0])Python
或者,在python中也可以逆序访问,比如
>>>print(a[-3]) Python
修改列表元素
在刚刚的列表中,如果我想把列表a中的第三个元素Java修改为R,则可以采用如下的命令:
>>>a[2]='R' #Java在原来的列表中位置为3,所以索引为3-1=2
直接用赋值的命令(=)来修改列表中的元素,修改后,再试着打印原来的列表,看有没有修改成功。
>>>print(a)['Python', 'C', 'R']
在列表中添加元素:append( ) 、 insert( )
在列表末尾添加元素
在刚刚的列表末尾添加元素Ruby,使用方法append( );
>>>print(a)['Python', 'C', 'R']>>>a.append('Ruby')>>>print(a)['Python', 'C', 'R', 'Ruby']
在列表中添加元素
如果想把元素Ruby添加到Python后面,则需要使用方法insert( )。
>>>a=['Python', 'C', 'R'] # 重新定义列表,避免上一步的操作>>>a.insert(1,'Ruby') # 将Ruby添加到Python后>>>print(a)['Python', 'Ruby', 'C', 'R']
从列表中删除元素 : del语句 , remove( ) , pop( )
知道元素的位置,删除某个特定位置的元素用del语句
>>>a=['Python', 'Ruby', 'C', 'Java']>>>print(a)['Python', 'Ruby', 'C', 'Java']>>>del a[1] # 删除刚刚添加的Ruby>>>print(a)['Python', 'C', 'Java']
不知道元素的位置,但是知道要删除什么元素,使用方法remove( )
>>>a=['Python', 'Ruby', 'C', 'Java']>>>print(a)['Python', 'Ruby', 'C', 'Java']>>>a.remove('Ruby')>>>print(a)['Python', 'C', 'Java']
如果想删除这个值并且继续使用它,可以使用方法pop( ),方法pop( )可以将原有列表中特定元素删除,并且可以将之赋值给新的变量。
>>>a=['Python', 'Ruby', 'C', 'Java']>>>print(a)['Python', 'Ruby', 'C', 'Java']>>>b=a.pop(1)>>>print(a)['Python', 'C', 'Java']>>>print(b)Ruby
3
组织列表
组织列表:方法sort( ) , 函数sorted( ) , 方法reverse( )
列表的永久性排序sort( )
使用方法sort( ) 可以对列表进行永久性排序
>>>a=['Python', 'Ruby', 'C', 'Java']>>>print(a)['Python', 'Ruby', 'C', 'Java']>>>a.sort() # 按照字母顺序排序>>>print(a)['C', 'Java', 'Python', 'Ruby']>>>a.sort(reverse=True) #按照字母逆序排序>>>print(a)['Ruby', 'Python', 'Java', 'C']
列表的临时排序sorted( )
使用函数sorted( ) 可以对列表进行临时性排序
>>>a=['Python', 'Ruby', 'C', 'Java']>>>print(a)['Python', 'Ruby', 'C', 'Java']>>>sorted(a) # 临时性排序>>>print(a) #看原来的列表排序有无改变['Python', 'Ruby', 'C', 'Java']>>>print(sorted(a)) # 打印出临时性排序的列表['C', 'Java', 'Python', 'Ruby']
倒着打印列表
要倒着打印列表,可以用方法reverse( ),方法reverse永久性的修改了排列的元素
>>>a=['Python', 'Ruby', 'C', 'Java']>>>print(a)['Python', 'Ruby', 'C', 'Java']>>>a.reverse()>>>print(a)['Java', 'C', 'Ruby', 'Python']
确定列表的长度
可以用函数len( ) 确定列表的长度
>>>a=['Python', 'Ruby', 'C', 'Java']>>>len(a)4
使用列表时避免索引错误
常见的索引错误包括:
1、忘记索引数是元素位置减去1
2、超出访问的列表索引
3、列表为空列表时,倒着访问列表a[-1]错误
注:当发生索引错误时,可以将列表长度打印出来观察是什么错误
4
操作列表——创建数值列表
使用range( )创建列表
可以使用函数range( ) 和函数list( ) 创建列表;
函数range( ) 可以生成一系列的数字,里面第一个参数是起始值,第二个参数表示不超过这个值的终止值,第三个参数表示步长,默认为1;
函数list( ) 可以将里面的参数转换为列表。
>>>c=list(range(1,10)) # 创建列表>>>print(c)[1, 2, 3, 4, 5, 6, 7, 8, 9]>>>d=list(range(1,10,2))>>>print(d)[1, 3, 5, 7, 9]
对列表进行简单的统计计算
可以对数值列表进行简单的统计,例如最大值、最小值、总和。
>>>c=list(range(1,10))>>>min(c)Out[34]: 1>>>max(c)Out[35]: 9>>>sum(c)Out[36]: 45
5
操作列表——使用列表的一部分
切片
切片,相当于把列表其中的一部分切出来。要创建切片,可以指定第一个元素和最后一个元素的位置,切片到达第二个元素的前一个元素停止切片,类似于函数range( )
>>>a=['Python', 'Ruby', 'C', 'Java']>>>print(a[1:3]) #切片第2到第4['Ruby', 'C']>>>print(a[:2]) #不指定第一个元素,从开始切片到第3个元素['Python', 'Ruby']>>>print(a[2:]) #不指定最后一个元素,从第3切片到最后['C', 'Java']>>>print(a[-3:]) #倒着切片,倒数第三个到最后一个['Ruby', 'C', 'Java']
复制列表
使用切片的方法来复制列表,会产生两个列表。如果使用赋值(=)的方法来复制列表,第二个列表仅仅是指向第一个列表,并没有复制。
>>>a=['Python', 'Ruby', 'C', 'Java']>>>b=a[:]>>>a.append('CSS')>>>print(a)['Python', 'Ruby', 'C', 'Java', 'CSS']>>>print(b)['Python', 'Ruby', 'C', 'Java']
采用赋值的方法来复制列表
>>>a=['Python', 'Ruby','C', 'Java']>>>b=a>>>a.append('CSS')>>>print(a)['Python', 'Ruby', 'C', 'Java', 'CSS']>>>print(b)['Python', 'Ruby', 'C', 'Java', 'CSS']
元组
1
定义元组
元组类似于列表,元组用小括号( )来表示.元组里面的元素不可以更改,除非重新定义。元组用小括号来定义。
>>>e=(1,2,3,4,5,6,7,8,9,10)>>>print(e)(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
2
修改元组变量
由于元组中的元素不可以修改,只能通过重新定义的方式来修改,例如把元组e最后一个元素修改为0
>>>e=(1,2,3,4,5,6,7,8,9,10)>>>print(e)(1,2,3,4,5,6,7,8,9,10)>>>e=(1,2,3,4,5,6,7,8,9,0)>>>print(e)(1,2,3,4,5,6,7,8,9,0)
![48330515c7902e85f3bb0a335f13f7e6.png](https://i-blog.csdnimg.cn/blog_migrate/53169d5a710a23ea2cc7858e3a7a6bcd.png)
Life is simple, I use Python.
即日起,关注我们,
无论起步何处,都是Python学习者。
![d53c0f894a54df49e5083c01997b1fa8.png](https://i-blog.csdnimg.cn/blog_migrate/c96cb1aa05232bb04c1896df3750178a.jpeg)