2021-07-07 Python基础知识Day04

创建列表
  • a=[]
  • a=[10,‘hello’]
  • list()将其他数据格式转化为列表
  • range([start],end,[step])创建整数列表,class:range.
#循环创建多个元素
>>> a=[x*2 for x in range(10)]
>>> a
[0, 2, 4, 6, 8, 10, 12, 14, 16, 18]
#if语句控制过滤
>>> a=[x*2 for x in range(10) if x%3==1]
>>> a
[2, 8, 14]
列表增删
  • append()尾部添加元素
>>> a=[1,2,3]
>>> id(a)
4384093760
>>> a.append([12,3,'hello'])
>>> a
[1, 2, 3, [12, 3, 'hello']]
>>> id(a)
4384093760
  • +添加,创建新的对象
>>> a=[1,2,3]
>>> id(a)
4487682240
>>> a=a+[12,3,'hello']
>>> a
[1, 2, 3, 12, 3, 'hello']
>>> id(a)
4384093760
  • extend()原地添加其他列表的元素
>>> a=[1,2,3]
>>> id(a)
4487683392
>>> a.extend([12,3,'hello'])
>>> a
[1, 2, 3, 12, 3, 'hello']
>>> id(a)
4487683392
  • insert()元素插入指定位置,后面元素的后移
>>> a=[1,2,3]
>>> a.insert(2,'hello')
>>> a
[1, 2, 'hello', 3]
  • 乘法扩展
列表元素删除
  • del 删除指定位置元素,后面元素的前移
>>> a=[1,2,3]
>>> del a[0]
>>> a
[2, 3]
  • pop()默认弹出最后一个元素
>>> a=[1,2,3]
>>> a.pop()
3
>>> a
[1, 2]
>>> a.pop(0)
1
>>> a
[2]
>>> a=[1,2,3]
>>> b=a.pop(1)
>>> b
2
  • remove()删除首次出现的指定元素
>>> a=[1,2,3,2]
>>> a.remove(2)
>>> a
[1, 3, 2]
>>> a.remove(6)
Traceback (most recent call last):
  File "<pyshell#46>", line 1, in <module>
    a.remove(6)
ValueError: list.remove(x): x not in list
元素搜索、计数
  • index()
    语法:index(value,[start,[end]])
>>> a=[1,2,3,2,7,9,3,88,6,3]
>>> a.index(3)
2
>>> a.index(3,3)
6
>>> a.index(3,7)
9
>>> a.index(3,4,9)
6
  • count()指定元素出现次数
>>> a
[1, 2, 3, 2, 7, 9, 3, 88, 6, 3]
>>> a.count(3)
3
  • len()列表长度
>>> a
[1, 2, 3, 2, 7, 9, 3, 88, 6, 3]
>>> len(a)
10
  • 是否存在
    in 或者 count()
>>>> a
[1, 2, 3, 2, 7, 9, 3, 88, 6, 3]
>>> 9 in a
True
>>> 10 in a
False
>>> a.count(10)
0
>>> a.count(9)
1
切片操作
  • [start:end[:step]]
>>> a
[1, 2, 3, 2, 7, 9, 3, 88, 6, 3]
>>> a[2:]
[3, 2, 7, 9, 3, 88, 6, 3]
>>> a[2:8]
[3, 2, 7, 9, 3, 88]
>>> a[2:8:3]
[3, 9]
>>> a[-2:]
[6, 3]
>>> a[-3:-2]
[88]
>>> a[-6:-2]
[7, 9, 3, 88]
列表遍历

for x in list:
print(x)

>>> a
[1, 2, 3, 2, 7, 9, 3, 88, 6, 3]
>>> for x in a:
	print(x)

	
1
2
3
2
7
9
3
88
6
3
列表排序sort()

sort()不创建新对象

>>> a
[1, 2, 3, 2, 7, 9, 3, 88, 6, 3]
>>> a.sort()
>>> a
[1, 2, 2, 3, 3, 3, 6, 7, 9, 88]
>>> a.sort(reverse=True)
>>> a
[88, 9, 7, 6, 3, 3, 3, 2, 2, 1]
>>> import random
>>> random.shuffle(a)
>>> a
[3, 88, 2, 1, 6, 3, 9, 3, 2, 7]
  • sorted()创建新对象,默认升序,不修改原有对象
>>> a
[3, 88, 2, 1, 6, 3, 9, 3, 2, 7]
>>> id(a)
4376919744
>>> sorted(a)
[1, 2, 2, 3, 3, 3, 6, 7, 9, 88]
>>> id(a)
4376919744
>>> a
[3, 88, 2, 1, 6, 3, 9, 3, 2, 7]
>>> sorted(a,reverse=True)
[88, 9, 7, 6, 3, 3, 3, 2, 2, 1]
>>> a
[3, 88, 2, 1, 6, 3, 9, 3, 2, 7]
>>> id(a)
4376919744
  • reversed()返回迭代器
    迭代器只能用1次,时间换空间。
>>> a
[3, 88, 2, 1, 6, 3, 9, 3, 2, 7]
>>> c = reversed(a)
>>> c
<list_reverseiterator object at 0x10b7e5310>
>>> list(c)
[7, 2, 3, 9, 3, 6, 1, 2, 88, 3]
>>> list(c)
[]
  • max() min() sum()
>>> a
[3, 88, 2, 1, 6, 3, 9, 3, 2, 7]
>>> max(a)
88
>>> min(a)
1
>>> sum(a)
124
>>> b=[1,3,hello]
Traceback (most recent call last):
  File "<pyshell#109>", line 1, in <module>
    b=[1,3,hello]
NameError: name 'hello' is not defined
二维列表
>>> a=[["高小一",18,30000,"北京"], ["高小二",19,20000,"上海"], ["高小一",20,10000,"深圳"],]
>>> a[2][2]
10000
>>> a[1][3]
'上海'
>>> for m in range(3):
	for n in range(4):
		print(a[m][n],end="\t")
	print()

	
高小一	18	30000	北京	
高小二	19	20000	上海	
高小一	20	10000	深圳
元组tuple

列表属于可变序列,可任意修改。而元组是不可变序列,定义之后就不能修改。

  • ()小括号创建元组
>>> a=(1,2,3)
>>> a
(1, 2, 3)
>>> type(a)
<class 'tuple'>
>>> b=(1)
>>> type(b)
<class 'int'>
>>> c=(1,)
>>> type(c)
<class 'tuple'>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值