python进阶系列- 01列表_您可以通过引用索引号来访问列表项

Python内置数据类型比较

  • 列表是一个有序且可变的集合,允许重复成员。
  • 元组是一个有序且不可变的集合,允许重复成员。
  • 集合是一个无序和无索引的集合,没有重复的成员。
  • 字典是一个无序、可变和索引的集合,没有重复的成员。
  • 字符串是 Unicode 编码的不可变序列。

创建列表

列表是用方括号或内置列表函数创建的。

示列:

list_1 = ["banana", "cherry", "apple"]
print(list_1)
# 内置方法list 
list_2 = list()
print(list_2)
# 允许包含任何类型的值
list_3 = [5, True, "apple", [1, 2, 3]]
print(list_3)
# 允许重复
list_4 = [0, 0, 1, 1]
print(list_4)

结果:

['banana', 'cherry', 'apple']
[]
[5, True, 'apple', [1, 2, 3]]
[0, 0, 1, 1]

访问元素

您可以通过引用索引号访问列表项。
请注意,索引从 0 开始。

示列:

list_1 = ["banana", "cherry", "apple"]
item = list_1[0]
print(item)
# 你可以通过负数索引,例如-1指向最后一个项目,-2指向倒数第二个项目,以此类推。
item = list_1[-1]
print(item)

结果:

banana
apple

改变元素

只需要引用索引号,并且赋值新值。

list_1 = ["banana", "cherry", "apple"]
list_1[2] = "lemon"
print(list_1)

结果:

['banana', 'cherry', 'lemon']

常用方法

查看Python 文档以查看所有列表方法

示列:

my_list = ["banana", "cherry", "apple"]

# len(): 返回列表元素的数量。
print("Length:", len(my_list))
# append(): 在列表末尾添加新的对象。
my_list.append("orange")
# insert(): 在列表中指定位置插入一个对象。
my_list.insert(1, "blueberry")
print(my_list)
# pop(): 移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。
item = my_list.pop()
print("Popped item: ", item)
# remove(): 移除列表中指定值的第一个匹配项。
my_list.remove("cherry") # 如果列表中不存在指定值,将引发一个错误。
print(my_list)
# clear() : 清空列表
my_list.clear()
print(my_list)
# reverse() : 反向列表中元素
my_list = ["banana", "cherry", "apple"]
my_list.reverse()
print('Reversed: ', my_list)
# sort() : 对原列表进行排序
my_list.sort()
print('Sorted: ', my_list)
# 用 sorted() 获得一个新列表,并且不影响原列表。
# sorted() 不仅可以用于列表,还可以用于其他可迭代的类型。
my_list = ["banana", "cherry", "apple"]
new_list = sorted(my_list)
# 创建一个列表,其中包含重复的元素
list_with_zeros = [0] \* 5
print(list_with_zeros)
# 列表可以使用 + 运算符进行连接。
list_concat = list_with_zeros + my_list
print(list_concat)
# 字符串转换为列表。
string_to_list = list('Hello')
print(string_to_list)

结果:

Length: 3
['banana', 'blueberry', 'cherry', 'apple', 'orange']
Popped item:  orange
['banana', 'blueberry', 'apple']
[]
Reversed:  ['apple', 'cherry', 'banana']
Sorted:  ['apple', 'banana', 'cherry']
[0, 0, 0, 0, 0]
[0, 0, 0, 0, 0, 'banana', 'cherry', 'apple']
['H', 'e', 'l', 'l', 'o']

复制列表

普通的引用性复制,要小心!

示列:

list_org = ["banana", "cherry", "apple"]
# 这只是复制了列表的引用,所以要小心!
list_copy = list_org
# 现在修改的副本也会影响原始列表
list_copy.append(True)
print(list_copy)
print(list_org)
# 使用 copy() 或者 list(x) :复制列表到新变量。
# 分片也可以用于复制列表:list\_copy = list\_org[:]
list_org = ["banana", "cherry", "apple"]
list_copy = list_org.copy()
# list\_copy = list(list\_org)
# list\_copy = list\_org[:]
# 现在修改的副本不会影响原始列表
list_copy.append(True)
print(list_copy)
print(list_org)

结果:

['banana', 'cherry', 'apple', True]
['banana', 'cherry', 'apple', True]
['banana', 'cherry', 'apple', True]
['banana', 'cherry', 'apple']

迭代

迭代是 Python 列表、字典、集合等数据结构的一个重要特性。

示列:

# 列表迭代
list_1 = ["banana", "cherry", "apple"]
for i in list_1:
    print(i)

结果:



**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化学习资料的朋友,可以戳这里无偿获取](https://bbs.csdn.net/topics/618317507)**

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
  • 10
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python列表的元素可以通过索引或切片方式去访问。 1. 通过索引访问:可以使用`[]`操作符加上一个索引访问列表中的元素,索引从0开始。示例如下: ```python my_list = ['apple', 'banana', 'orange'] # 通过索引访问列表中的元素 print(my_list[0]) # 输出:apple print(my_list[1]) # 输出:banana print(my_list[2]) # 输出:orange ``` 2. 通过切片访问:可以使用`[]`操作符加上起始索引和结束索引构成一个切片来访问列表中的多个元素,左闭右开区间。示例如下: ```python my_list = ['apple', 'banana', 'orange', 'grape', 'watermelon'] # 通过切片访问列表中的多个元素 print(my_list[1:3]) # 输出:['banana', 'orange'] print(my_list[2:]) # 输出:['orange', 'grape', 'watermelon'] print(my_list[:4]) # 输出:['apple', 'banana', 'orange', 'grape'] print(my_list[1:5:2]) # 输出:['banana', 'grape'] ``` 在上面的示例中,`my_list[1:3]`表示从索引1开始(包含),到索引3结束(不包含),取出列表中的元素,即`['banana', 'orange']`;`my_list[2:]`表示从索引2开始(包含),取出列表中的所有元素,即`['orange', 'grape', 'watermelon']`;`my_list[:4]`表示从列表开头开始(即索引0),到索引4结束(不包含),取出列表中的元素,即`['apple', 'banana', 'orange', 'grape']`;`my_list[1:5:2]`表示从索引1开始(包含),到索引5结束(不包含),每隔2个元素取一个元素,即`['banana', 'grape']`。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值