大家好,小编来为大家解答以下问题,python列表和数组的区别,python列表转换为字符串,现在让我们一起来看看吧!
火车头采集ai伪原创插件截图:
文章目录
1. 列表
列表概述: Python中的列表是由一系列按特定顺序排列的元素组成的。
它是Python中内置的可变序列。在形式上,列表的所有元素都放在一对中括号“[]”中,
两个相邻元素间使用逗号“,”分隔。
在内容上,可以将整数、实数、字符串、列表、元组等任何类型的内容放入到列表中
1.1 列表的创建与删除
补充: 通过调用 list() 函数将 zip() 对象强制转换成列表
my_list = [11, 12, 13]
my_tuple = (21, 22, 23)
for list in list(zip(my_list, my_tuple)):
print(list)
运行结果:
1.2 列表元素的访问与遍历
1.2.1 示例: 使用for循环
lists = [1, 2, 3, 4, 5]
for list in lists:
print(list)
运行结果:
1.2.2 示例: 使用for循环和enumerate()函数
# 使用for循环和enumerate()函数
lists = [1, 2, 3, 4, 5]
for index, value in enumerate(lists):
print(f'{index}: {value}')
运行结果:
1.2.3 示例: 使用while循环
# 使用while循环
lists = [1, 2, 3, 4]
i = 0
while i < len(lists):
print(lists[i])
i += 1
运行结果:
1.2.4 示例: 使用索引进行遍历
modern = ['高铁', '扫码支付', '共享单车', '网购']
for index in range(len(modern)):
print(modern[index])
运行结果:
1.2.4 示例: 利用iter()生成迭代器遍历。iter()的语法为
iter(object[,sentinel])
参数说明:
object:支持迭代的集合对象。
sentinel:如果传递了第二个参数,则参数object必须是一个可调用对象(如函数)
此时,iter创建了一个迭代器对象,每次调用这个迭代器对象的__next__()
方法都会调用object。
modern = ['高铁', '扫码支付', '共享单车', '网购']
for val in iter(modern):
print(val)
运行结果:
1.3 列表元素的常用操作
1.3.1 添加元素的方法
示例:
lists = [1, 2, 3]
# append() 方法在末尾添加一个对象
lists.append(4)
# extend() 可以一次追加多个值
lists.extend([5, 6])
# insert() 函数可以在指定位置插入值
lists.insert(6, 7)
print(lists)
运行结果:
1.3.2 删除元素的方法
示例: del语句可以直接删除整个列表
lists = [1, 2, 3,4,5]
# del 可以直接删除整个列表
del lists
print(lists)
运行结果:
示例: del语句可以删除单个值
lists = [1, 2, 3, 4, 5]
# del 可以删除单个值
del lists[0]
print(lists)
运行结果:
示例: del语句可以删除最后一个值
modern = ['高铁', '扫码支付', '共享单车', '网购']
del (modern[-1])
print(modern)
运行结果:
示例: 使用pop()函数删除值
lists = [1, 2, 3, 4, 5]
# pop() 默认会删除列表最后一个值 并且返回该元素
print(lists.pop())
print(lists)
print("------------------")
# pop() 也可以删除指定的元素 并且返回该元素
print(lists.pop(0))
print(lists)
运行结果:
示例: remove()可以根据值删除元素
lists = [1, 2, 3, 4, 5]
# remove() 可以根据值删除元素
lists.remove(3)
print(lists)
运行结果:
示例: clear()方法用于清空列表
lists = [1, 2, 3, 4, 5]
# clear() 方法用于清空列表
lists.clear()
print(lists)
示例: del lists[:] 也可以清空列表
lists = [1, 2, 3, 4, 5]
# del lists[:] 也可以清空列表
del lists[:]
print(lists)
运行结果:
1.3.3 修改元素的方法
示例: reverse()函数可以反转列表
lists = [1, 2, 3, 4, 5]
# reverse()函数可以反转列表
lists.reverse()
print(lists)
运行结果:
示例: copy()函数复制列表
lists = [1, 2, 3, 4, 5]
# copy()函数复制列表
lists_cpoy = lists.copy()
print(lists_cpoy)
运行结果:
1.3.4 查找元素方法
index()的语法用于从列表中找出某个值第一个匹配项的索引位置,
即获取指定元素首次出现的下标。
index()方法的语法为:
list.index(x,[,start,end])
x:查找的对象
star:可选,查找的起始位置
end:end可选,查找的结束位置
返回值:该方法返回查找对象的索引位置,如果没有找到对象则抛出异常。
modern = ['高铁', '扫码支付', '共享单车', '网购']
print(modern.index('扫码支付'))
运行结果:
示例:count()函数
modern = ['高铁', '扫码支付', '共享单车', '网购', '高铁']
print(modern.count('高铁'))
运行结果:
示例:len()函数
modern = ['高铁', '扫码支付', '共享单车', '网购', '高铁']
print(len(modern))
运行结果:
示例:in 关键字
modern = ['高铁', '扫码支付', '共享单车', '网购', '高铁']
print('高铁' in modern)
运行结果:
1.4 列表元素的统计与排序
- 列表元素的统计
列表元素的统计: 在Python中,提供了sum()函数用于统计数值列表中各元素的和。
lists = [1, 2, 3, 4]
print(sum(lists))
运行结果:
- 列表元素的排序
列表元素的排序: Python中提供了两种常用的对列表进行排序的法。使用列表对象的sort()方法实现、使用内置的sorted()函数实现。
1.4.1 sort()
列表对象提供了sort()方法对原列表中的元素进行排序。排序后原列表中的元素
顺序发生改变,sort()方法的语法格式为:
listname.sort(key=None,reverse=False)
参数说明:
listname:要排序的列表名。
key:表示从每个列表元素中提取一个比较键(例如,设置key=str.lower)
表示排序时不区分大小写)
reverse:可选参数,默认为升序排序(False),可以指定为True(降序排序)。
lists = ['c', 'B', 'a']
print("原列表: ", lists)
lists.sort(key=str.lower)
print("列表默认升序: ", lists)
运行结果:
注意点:
- 使用sort()方法进行排序时,采用的规则是先对大写字母进行排序,然后再对小写字母进行排序。
- 如果相对字符串进行排序,应该设置key为不区分大小写
- sort()对中文排序不支持。
1.4.1 sorted()
语法格式为:
sorted(listname,key=None,reverse=False)
该方法于sort()函数不同的是,该方法不会改变原列表,只会生成一个
临时的副本。
示例:
lists = ['c', 'B', 'a']
lists = sorted(lists, key=str.lower)
print(lists)
运行结果:
1.5 列表的嵌套
嵌套列表就是列表中包含列表。嵌套列表可以模拟出现实中的表格、矩阵、2D游戏的地图、棋盘等。
示例: 通过对列表的嵌套应用,实现3×4矩阵的转置行和列。
matrix = [[1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12]]
transposed = []
for i in range(4):
midden = []
for row in matrix:
midden.append(row[i])
transposed.append(midden)
print(transposed)
运行结果:
1.6 综合示例
# 一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
height = 100
height_sum = []
for item in range(10):
height_sum.append(height)
height /= 2
print(height_sum)
print('它在第10次落地时,共经过' + str(sum(height_sum)) + "米")
print('第10次反弹: ' + str(height) + '米')