Python学习--Task03:列表与元组

一、列表

列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。
列表的数据项不需要具有相同的类型。
创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。

1. 构建列表

number=[1,2,3,4,5]#一般列表
print(number)
list=["ncepu",123,2.2,True,[1,2,3]]#混合列表
print(list)
empty=[]#空列表
print(empty)

2. 访问列表中的值

使用下标索引来访问列表中的值,同样也可以使用方括号的形式截取字符:
注意列表索引值是从0开始的。

list1 = ['Google', 'Runoob', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ]; 
print ("list1[0]: ", list1[0])
print ("list2[1:5]: ", list2[1:5])

输出:

list1[0]:  Google
list2[1:5]:  [2, 3, 4, 5]

3. 向列表中添加元素

  1. append()函数
    append()函数用来在列表末尾添加新的对象,只接受一个参数,对象可以是任意数据类型,输出结果保留原有数据类型。
number=[1,2,3,4,5]
number.append(2.2)
print(number)
number.append([6,7,8])#对象为列表,输出时整个列表作为一个对象输出。
print(number)

输出为:

[1, 2, 3, 4, 5, 2.2]
[1, 2, 3, 4, 5, 2.2, [6, 7, 8]]
  1. extend()函数
    extend()函数原理是使用一个列表扩展另一个列表,所以参数应是一个列表。
number=[1,2,3,4,5]#一般列表
number.extend([6,7,8])
print(number)
a=len(number)
print(a)

输出为:

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

注:
extend()函数的对象只能为一个列表,列表可以有多个数据。
也可以用“+”来实现列表拓展,但应注意“+”两边类型相同。
list*3、list*=3均为合法语句(列表数据重复3次)。

list1=[123 , 456]
list2=[456 , 123]
list3=list1+list2
print(list3)
  1. insert()函数
    insert()函数有两个参数,第一个参数表示插入的位置,第二个参数表示插入的内容。其中位置从0开始计数。
number=[1,2,3,4,5]
number.insert(0,0)
number.insert(3,9)
print(number)

输出为:

[0, 1, 2, 9, 3, 4, 5]

4. 从列表删除元素

  1. remove()函数
    使用remove()函数可以移除列表中的元素,且只需要知道元素的名称,不需要知道元素在列表中的位置。
number=[1,2,3,4,5]
number.remove(2)
print(number)
  1. del语句
number=[1,2,3,4,5]
del number[4]
print(number)

输出为:

[1, 2, 3, 4]

注:
del后面不用加(.);
用del语句需要知道元素的索引号。
del加列表的名字可以把整个列表删掉,如del number。

  1. pop()函数
number=[1,2,3,4,5]
name=number.pop()
print(number)
print(name)

输出为:

[1, 2, 3, 4]
5

注:
pop函数后不加参数时默认删除最后一个元素;
用pop函数删除的值在IDLE中可以显示出来,所以可以给删除的值命名并打印出来。
pop函数后加上参数(索引值)可以删除指定位置的元素:

number=[1,2,3,4,5,6]
name=number.pop(4)
print(number)
print(name)

输出为:

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

5. 列表切片

number=[1,2,3,4,5,6]
list1=number[2:4]#索引值从0开始
list2=number[:4]#默认从头开始
list3=number[2:]#默认到结尾
list4=number[:]#copy原列表,原列表的值改变不影响得到的新列表
print("list1=:" , list1)
print("list2=:" , list2)
print("list3=:" , list3)
print("list4=:" , list4)

输出为:

list1=: [3, 4]
list2=: [1, 2, 3, 4]
list3=: [3, 4, 5, 6]
list4=: [1, 2, 3, 4, 5, 6]

6. 列表的常用操作符

列表的常用操作符有:

  • 比较操作符
  • 逻辑操作符
  • 连接操作符
  • 重复操作符
  • 成员关系操作符
  1. 列表的比较

列表有多个元素时,从第0个元素开始比较,若满足不等式,即为True。

list1=[123 , 456]
list2=[456 , 123]
print(list1>list2)
print(list1<list2)
False
True
  1. 判断列表中的元素:
list1=[123 , 456 , [7 , 8 , 9 ] ]
print(123 in list1)
print(456 not in list1)
print(7 in list1)
print(7 in list1[2])
True
False
False
True

注:上例说明in或者not in不能判断列表中的列表的元素是否存在,需要加入索引号。

  1. 访问列表中列表的元素(类似二元数组):
list1=[123 , 456 , [7 , 8 , 9 ] ]
print(list1[2][0])

输出为:7

  1. 得到列表中某元素的个数:count()函数
list1=[123 ,123, 456 , [7 , 8 , 9 ] ]
print(list1.count(123))

输出为2。

  1. 得到参数在列表中的位置:index()函数
list1=[1,2,3,1,2,3,4,5,6,[7,8,9] ]
a=list1.index(3)#出现的第一个位置
b=list1.index(3,3,6)#后两个参数限定所求值在列表中的位置
#c=list1.index(8)#index()不能得到列表中列表的参数位置
print("a=:",a)
print("b=:",b)
#print("c=:",c)

输出为:

a=: 2
b=: 5
  1. 将整个列表前后翻转:reverse()函数
list1=[1,2,3,1,2,3,4,5,6,[7,8,9] ]
list1.reverse()
print(list1)

输出为:

[[7, 8, 9], 6, 5, 4, 3, 2, 1, 3, 2, 1]
  • 用指定的方法对列表成员进行排序:sort()函数
list1=[3,5,2,77,33,21,423,1,4]
list2=[3,5,2,77,33,21,423,1,4]
list1.sort()#默认从小到大排
list2.sort(reverse=True)#翻转,从大到小
print(list1)
print(list2)

元组

Python 的元组与列表类似,不同之处在于元组的元素不能修改
元组使用小括号,列表使用方括号。
元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。

  1. 创建和访问一个元组
tuple1=(1,2,3,4,5,6,7,8)
a=tuple1[3]
b=tuple1[:5]#切片同列表
print(a)
print(b)
temp1=(1)
print(type(temp1))
temp2=2,3,4
print(type(temp2))
temp3=1,
print(type(temp3))

输出为:

4
(1, 2, 3, 4, 5)
<class 'int'>
<class 'tuple'>
<class 'tuple'>

注:
元组的切片、拷贝同列表;
是否为元组是由逗号决定的,而非小括号。

  1. 更新和删除一个元组
tuple1=(1,2,3,4,5,6,7,8)
tuple2=tuple1[:3]+(9,)+tuple1[3:]
print(tuple2)

注:
运用切片的原理向元组中添加元素,实质是把元组从指定位置切开在加入新元组;
添加的部分,小括号、逗号均不能缺少;
del tuple1可以删除整个元组。

  1. 元组相关的操作符
  • 拼接操作符“+”;
  • 重复操作符“*”;
  • 关系操作符“>”“<”等;
  • 成员操作符“in”“not in”;
  • 逻辑操作符“and”“or”“not”。

参考文献

https://www.runoob.com/python3/python3-tuple.html
https://www.bilibili.com/video/av4050443/?p=15

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值