python 元组和列表区别_Python基础列表、元组

列表

列表是按照特定顺序的排列组合,就像数学中的数列,列表中的元素具有一定的排列顺序。

在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']

94b37bc18a0aa3c96e122d8ede25cc2e.png

元组

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

Life is simple, I use Python.

即日起,关注我们,

     无论起步何处,都是Python学习者。

d53c0f894a54df49e5083c01997b1fa8.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值