PYTHON基础篇4

目录

前言

一、数组

二、列表

 1.创建列表

 2.访问列表元素:

 3.修改列表元素:

 4.列表长度

5. 其他列表操作

三、切片

 扩展:序列

总结



前言

迄今为止的所有人生都是大写着失败,但不妨碍我继续前进 ----------塞罗提斯.唐维德拉《堂吉诃德》


一、数组

       数组就像是一堆连续摆放的箱子,每个箱子里面放一个元素,是一种用于存储相同数据类型的元素的数据结构,下图就是数组的存储结构

相同数据类型的元素指的是数组中的所有元素都必须是相同的数据类型,也就是说如果创建了一个整型数组,数组里就不能有其他数据类型的存在。列表里面可以存储不同数据类型的元素

数组这种数据结构,就像是一个有特定规则的班级:

  1. 固定容量:数组在创建时就确定了其容量,就像一个班级在开学前就设定了固定的座位数,一旦确定,就不能在学期中随意增加或减少座位。

  2. 统一成员:数组中的每个元素都具有相同的数据类型,这就像班级里的所有学生都遵循相同的规则,比如都是同一个年级的学生。

  3. 紧密排列:数组的元素在内存中是紧密排列的,没有间隔,就像学生们在教室里按照座位表紧密地坐在一起,没有空位。

  4. 快速定位:通过下标可以直接访问数组中的任何元素,这类似于通过学生的座位号快速找到他们的位置。在数组中,这个座位号就是元素的索引,通常从0开始计数,所以第一个学生(元素)的座位号是0,第二个是1,以此类推。


二、列表

        在Python中,使用列表替换了数组,相比于数组,列表更加灵活,它也用于存储一组有序的元素,但是列表可以包含各种不同类型的元素,包括整数、浮点数、字符串、甚至可以是其他列表,而且列表的长度是可变的,你可以根据需要向列表中添加或删除元素,从而改变列表的长度。 但在数组当中你要修改一个数或者删除一个你只能通过后面的数将前面的进行覆盖释放内存相比之下列表会更加的灵活


 1.创建列表

                使用框括号[]或者list()函数进行创建

list()函数可以将其他可迭代对象转换成列表,比如字符串或者是循环输入数据。

my_list1=[1,2,3,4,5]

my_list2=list("hello world")

my_list3=list(input().split())

 2.访问列表元素:

        使用索引来访问列表中的元素,但是需要注意,索引是从 0 开始的,0 代表第一个元素,1代表第2个元素。

my_list = [1, 2, 3, 4, 5]
one = my_list[0]  # 访问第一个元素,值为1

 3.修改列表元素:

        可以直接通过索引来修改列表中的元素。

my_list = [1, 2, 3, 4, 5]
my_list[0] = 10  # 修改第1个元素的值为10

 4.列表长度

        可以使用 len() 函数来获取列表的长度,即列表中元素的个数。

my_list = [1,2,3,4,5]
length = len(my_list) #计算my_list的长度

5. 其他列表操作

  • append(value):将新的元素添加到列表的末尾。
my_list = [1, 2, 3, 4, 5]
my_list.append(6) # my_list现在是[1,2,3,4,5,6]

  • insert(index, value): 在指定位置插入元素。
my_list = [1, 2, 3, 4, 5]
my_list.insert(0, 6)  # 在索引0处插入6, 现在是 [6,1, 2, 3, 4, 5]

  • remove(value): 移除值为value的元素,但是如果有多个时,只删除第一个。
my_list = [1, 2, 2, 3,4,5]
my_list.remove(2)  # 删除第一个值为2的元素, 现在是 [1, 2, 3, 4, 5]
  • pop(index): 删除并返回指定索引index位置的元素。
my_list = [1, 2, 3, 4, 5]
one = my_list.pop(1)  # 删除并返回索引1处的元素,现在是 [1, 3, 4, 5] one是2

  • index(value): 返回指定值value的索引位置, 如果有多个时,返回第一个。
my_list = [1, 2, 3, 4, 5, 2]
element_index = my_list.index(2)  # 返回2的第一个索引位置, 即索引下标1

  • sort(): 按照升序排序列表。
my_list = [3, 1, 2, 5, 4]
my_list.sort()  # 按升序排序, 现在是 [1, 2, 3, 4, 5]

  • reverse(): 反转列表的顺序。
my_list = [1, 2, 3, 4, 5]
my_list.reverse()  # 反转列表元素的顺序, 现在是 [5, 4, 3, 2, 1]

以上,是对列表的定义方式、特点、访问方式以及列表使用中经常使用的方法。 

三、切片

在python中我们还可以通过切片来获取列表中的一小部分元素,相当于列表的子列表

my_list[startIndex: endIndex: step]

 其中startIndex是切片的起始索引,endIndex是切片的结束索引,step是可选参数,用于指定从起始到结束的步长,默认为1,切片获取的内容是从开头索引到结束索引(不包括结束索引)。

  • 如果开始位置和结束位置都传递,表示从切片的startIndex位置切到endIndex所在的位置
  • 如果不传递开始位置,即list[ : endIndex],表示从列表的开头切到endIndex所在的位置
  • 如果不传递结束位置,即list[startIndex : ],表明从列表的startIndex位置切到末尾
  • 如果开始位置和结束位置都不传递,即list[ : ], 表明从列表的开头切到末尾,相当于整个列表。

 具体的实例

my_list = [1, 2, 3, 4, 5, 6, 7]

# 从索引1到索引5,不包括索引5的元素
sublist = my_list[1:5]
# sublist 现在是 [2,3,4,5]

# 从索引1开始到末尾
sublist = my_list[1:]
# sublist 现在是 [2, 3, 4, 5, 6, 7]

# 从头开始到索引3,不包括索引3的元素
sublist = my_list[:3]
# sublist 现在是 [1, 2, 3]

# 使用步长,从索引0开始,每隔2个元素取一个
sublist = my_list[0::2]
# sublist 现在是 [1,3,5,7]

此外,还可以使用负数索引,-1 表示最后一个元素,-2表示倒数第二个元素,依次类推。 

sublist = my_list[-2: ] # 倒数第二个元素一直到列表的末尾
# sublist现在是[6, 7]

sublist = my_list[-3:-1]  # 倒数第三个到倒数第二个元素,不包括最后一个元素
# sublist现在是[5, 6]

 扩展:序列

        在Python编程语言中,"序列"是一种特殊的数据集合,它允许你以有序的方式存储多个数据项,每个数据项都有一个对应的位置,这个位置就是它的索引。序列中的元素按照它们被添加的顺序排列。Python中的序列类型支持多种数据项,包括但不限于字符和数字。以下是Python中几种主要的序列类型:

  1. 列表:使用方括号[]来定义,元素之间用逗号分隔。列表是动态的,意味着你可以在运行时向列表中添加、删除或修改元素。
  2. 元组:与列表类似,但使用圆括号()来定义。元组一旦创建,其内容就固定不变,你不能修改、添加或删除其中的元素。
  3. 字符串:由引号(单引号' '或双引号" "),包围的字符序列。字符串中的每个字符都有一个位置,字符串本身也是不可变的。

       序列类型共享一些通用的操作,例如通过索引来访问特定位置的元素、使用切片操作来获取序列的一部分、计算序列的长度以及使用for循环进行迭代。这些操作不仅适用于列表,也适用于元组和字符串,使得它们在处理数据时非常灵活和强大。

# 列表
my_list = [1, 2, 3]
# 元组
my_tuple = (1, 2, 3)
# 字符串
my_string = "hello"

# 索引访问
print(my_list[0])
print(my_tuple[0])
print(my_string[0])

# 遍历
for item in my_list:
    print(item)

for item in my_tuple:
    print(item)

for character in my_string:
    print(character)

总结

在本次文章中介绍了数组,列表的基本操作,还有序列的介绍,继续加油

  • 18
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值