列表处理
记录学习持续更新
文章目录
前言
常见的列表处理
一、使用
1.访问列表元素
代码如下(示例):
book_list = ['python', 'java', 'c', 'C++', 'c#']
print(book_list[0])
#输出:
python
2.修改列表中的元素的值
book_list = ['python', 'java', 'c', 'C++', 'c#']
book_list[0] = 'pyth'
print(book_list[0])
print(book_list)
#输出:
pyth
['pyth', 'java', 'c', 'C++', 'c#']
3、列表添加元素/指定位置
book_list = ['python', 'java', 'c', 'C++', 'c#']
book_list.append('pyth')
print(book_list)
#输出:
['python', 'java', 'c', 'C++', 'c#', 'pyth']
book_list = ['python', 'java', 'c', 'C++', 'c#']
book_list.append('pyth')
book_list.insert(0, 'only')
print(book_list)
#输出:
['only', 'python', 'java', 'c', 'C++', 'c#', 'pyth']
4、列表中指定位置删除元素/删除队尾元素
book_list = ['python', 'java', 'c', 'C++', 'c#']
del book_list[0]
print(book_list)
#输出:
['java', 'c', 'C++', 'c#']
book_list = ['python', 'java', 'c', 'C++', 'c#']
del book_list[0]
book_list.pop()
print(book_list)
#输出:
['java', 'c', 'C++']
del方法没有返回值,而pop方法有返回值
5、列表中删除指定值(只删除第一次遇到的值)
book_list = ['python', 'java', 'c', 'C++', 'c#']
book_list.remove('java')
print(book_list)
#输出:
['python', 'c', 'C++', 'c#']
6、列表进行排序
book_list = ['python', 'java', 'c', 'C++', 'c#']
book_list.sort()
print(book_list)#切记不要输出print(book_list.sort()) sort方法没有返回值,所以会打印空值
#输出:
['C++', 'c', 'c#', 'java', 'python']
这个函数会修改原始列表的排序。
list.sort( key, reverse )
reverse 为True时,按照字母顺序或者数值从大到小排序
reverse 为False时,按照字母倒序或者数值从小到大排序
book_list = ['python', 'java', 'c', 'C++', 'c#']
book_list.sort(key= len, reverse = True)
print(book_list)
#按照字符串长度排序
#输出:
['python', 'java', 'C++', 'c#', 'c']
sort函数可对元组,字典进行排序,
tpl = [(1, 4), (2, 3), (3, 1), (4, 2)]
tpl.sort(key = lambda x: x[1], reverse = False)
print(tpl)
#按照字符串长度排序
#输出:
[(3, 1), (4, 2), (2, 3), (1, 4)]
dics = [{"name" : "zhangsan", "age" : 35}, {"name" : "lisi", "age" : 18}, {"name" : "wangwu", "age" : 48}]
dics.sort(key= lambda x : x["age"], reverse= False)
print(dics)
#输出:
[{'name': 'lisi', 'age': 18}, {'name': 'zhangsan', 'age': 35}, {'name': 'wangwu', 'age': 48}]
7、复制列表
一般不使用这种放方法:
book_list = ['python', 'java', 'c', 'C++', 'c#']
book_list.sort(key= lambda x:x[0], reverse = False)
boo_list2 = book_list
book_list 和book_list2指向同一个列表,修改列表中的元素后,另外一个列表元素也会发生改变
book_list = ['python', 'java', 'c', 'C++', 'c#']
book_list.sort(key= lambda x:x[0], reverse = False)
boo_list2 = book_list
book_list[0] = 'py'
print(book_list)
print(boo_list2)
#输出:
['py', 'c', 'c#', 'java', 'python']
['py', 'c', 'c#', 'java', 'python']
import copy
new_list = copy.copy(original_list)
8、列表判断是否为空
List1 = []
if List1:
print("un null")
print(List1)
else:
print("null")
print(List1)
#输出:
null
[]