python基础语法2(数据结构)

1、深入列表

1.1 list列表

array=[1,2,3,4,5]

array.append(x):追加

array.extend(L),追加列表

array.insert(i, x)在i位置插入x

array.remove(x)删除值为x的元素

array.pop([i]),[i]表示参数可选,不使用则pop最后的数据,输入表示删除具体位置的数据

array.index(x)返回x的索引值

array.count(x)统计值为x的个数

array.sort()排序

array.reverse()。将列表倒过来


1.2 deque列表

from collections import deque

方便两边插入和删除

queue = deque(["a", "b", "c"])

queue.append(x)

queue.appendleft()

queue.pop()

quque.popleft()


1.3 列表推导式

squares=[x**2 for x in range(10)]

x**2表示x的平法,得到的值是0,1,4,9,...81

再复杂一点的

[(x,y) for x in [1,2,3] for y in [3,1,3] if x!=y]

x和y的组合,并且x不等于y

多层矩阵

matrix = [ [1,2,3,4], [5,6,7,8],[9,10,11,12] ]

[[row[i] for row in matrix] for i in range(4)]

得到的值

[[1,5,9],[2,6,10],...[4,8,12]]

分析for row in matrix遍历matrix的count的次数,每次row会自动被赋值为matrx[i]

tmp2 = []

for i in range(4):

    tmp = []

    for row in matrix:

        tmp.append(row[i) // 每次for循环row都会变化为matrix[i],而row[i]相当于matrx[0][i],[1][i],就像上面的i第一次是0,第二次是1

temp2.append(tmp)


1.4 del语句

array = [1,2,3,4,5,6]

del array[0]

del array[1:3]

delete array:表示删除了这个对象,再使用这个对象会报错的


2 元组

t = 1,2,3

元组与列表很像

t

(1,2,3)

得到的值会使用括号的,我们也可以在赋值的时候加上括号

u = t, 4,5,6

得到的值是((1,2,3),4,5,6)

u=t,(4,5,6)

得到的值是((1,2,3),(4,5,6))

可以反着赋值:x,y,z=t

赋值为空t = ()


3、集合

set,无序不重复元素,赋值方式有两种,大括号,list是中括号

testset = {"a","b","c"}

testset2=set("abc")

testset3=set("aef")

"a" in testset返回为true

testset2-testset3返回为"b", "c"

&,|,等都可以操作


4、字典

即map,赋值

tel={"jack":100,"tmo":200}

tel["jack"]

del tel["jack']

tel["jack"]=300

list(tel.keys()):把所有key值存储在list中

sorted(tel.keys())

"a" in tel

"a" not in tel

dict相当于构造函数,可以帮忙构造map对象

dict(["a",1],["b",2])

dict("a"=1,"b"=2)




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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值