python中的列表使用

列表

记住四个基本操作:增删改查
1、访问列表,索引为-1表示列表的最后一个元素,索引为-2表示列表的倒数第二个元素
2、修改表中的元素
3、在列表末尾添加表元素(append()),在列表中间插入元素(insert()), 用append()动态创建列表很容易
4、删除元素(del,pop,remove)。pop源自这样的类比:列表就像一个栈,而删除列表末尾的元素相当于弹出栈顶元素。 pop和remove有需要注意的地方,见下面代码注释。
a = ['abc','def','efg','hij']
print("a[-1]:",a[-1])
print("a[-2]:",a[-2])
print("a[1]:",a[1])
a[1] = 'okm'  # 修改表元素
print("a[1]:",a[1])
a.append('qwe')  # 在列表末尾添加表元素
print("a:",a)
a.insert(0,'zxc')  # 在列表中间插入元素
print("a:",a)
del a[1]  # 删除元素,删除后再也不能访问到该元素
print("a:",a)
b = a.pop(0) # 删除元素,b是被删除的元素的值,0表示索引(根据索引可以删除列表中任何位置的元素),如果pop后面没有索引则表示删除列表的最后一个元素
print("b:",b)
print("a:",a)
a.remove("hij")  # 根据值删除元素,注意,remove()只删除第一个指定的值,如果要删除的值可能在列中中出现多次,就需要用循环来判断是否删除了所有这样的值
print("a:",a)
a[-1]: hij
a[-2]: efg
a[1]: def
a[1]: okm
a: ['abc', 'okm', 'efg', 'hij', 'qwe']
a: ['zxc', 'abc', 'okm', 'efg', 'hij', 'qwe']
a: ['zxc', 'okm', 'efg', 'hij', 'qwe']
b: zxc
a: ['okm', 'efg', 'hij', 'qwe']
a: ['okm', 'efg', 'qwe']
列表元素排序,分为根据字符串首字母永久性排序,根据字符串首字母临时排序,反转列表元素的排列顺序
a = ['def','abc','hij','efg']
print("sorted(a):",sorted(a,reverse=True)) # 临时排序,按与字母相反的顺序显示列表
print("sorted(a):",sorted(a,reverse=False)) # 临时排序,按与字母相同的顺序显示列表
print("a:",a)
print("a.sort():",a.sort())   # sort()是永久排序,注意这个sort()的返回值和sorted()的返回值不一样。sort()里也可以加reverse参数
print("a:",a)
print("car.reverse():",a.reverse())  # 反转列表元素的排列顺序
print("a:",a)
sorted(a): ['hij', 'efg', 'def', 'abc']
sorted(a): ['abc', 'def', 'efg', 'hij']
a: ['def', 'abc', 'hij', 'efg']
a.sort(): None
a: ['abc', 'def', 'efg', 'hij']
car.reverse(): None
a: ['hij', 'efg', 'def', 'abc']
使用函数range时,可指定步长
even_numbers = list(range(2,11,2))
print(even_numbers)
[2, 4, 6, 8, 10]
对数字列表执行简单的统计计算
digits = [1,2,3,4,5,6,7,8,9,0]
print(min(digits))
print(max(digits))
print(sum(digits))
0
9
45
列表解析,将for循环和创建新元素的代码合成一行,并自动附加新元素。很方便!!!
squares = [value**2 for value in range(1,11)]
print(squares)
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
复制列表,注意两种情况的区别,所以复制列表要用[:],直接赋值名字的话会使得两个变量都指向同一个列表。
my_foods = ['pizza','falafel','carrot cake']
friend_foods = my_foods[:]
print("my_foods:",my_foods)
print("friend_foods:",friend_foods)
my_foods.append('cannoli')
friend_foods.append('ice cream')
print("my_foods:",my_foods)
print("friend_foods:",friend_foods)
print("------------------------------------")
my_foods = ['pizza','falafel','carrot cake']
friend_foods = my_foods    # 注意这里和上面的区别
print("my_foods:",my_foods)
print("friend_foods:",friend_foods)
my_foods.append('cannoli')
friend_foods.append('ice cream')
print("my_foods:",my_foods)
print("friend_foods:",friend_foods)
my_foods: ['pizza', 'falafel', 'carrot cake']
friend_foods: ['pizza', 'falafel', 'carrot cake']
my_foods: ['pizza', 'falafel', 'carrot cake', 'cannoli']
friend_foods: ['pizza', 'falafel', 'carrot cake', 'ice cream']
------------------------------------
my_foods: ['pizza', 'falafel', 'carrot cake']
friend_foods: ['pizza', 'falafel', 'carrot cake']
my_foods: ['pizza', 'falafel', 'carrot cake', 'cannoli', 'ice cream']
friend_foods: ['pizza', 'falafel', 'carrot cake', 'cannoli', 'ice cream']
列表和元组区别,元组不可修改。记住,元组里面的元素是不能一个一个修改的(不能用a[0]这种方式修改),但是元组自己是可以修改的(可以直接修改a=(1,2) )。
检查特定值是否包含在列表中
request = ['mushrooms','onions','pineapple']
print('mushrooms' in request)
print('pepperpni' in request)
print('mushrooms' not in request)
print('pepperpni' not in request)
True
False
False
True
判断列表是否为空
request = []
if request:
    print("ok")
else:
    print("no data")
no data

以上内容为作者总结自参考书籍《python编程入门到实践》,希望对你有所帮助。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值