为了账号安全,请及时绑定邮箱和手机立即绑定

要列出的 Python 列表

要列出的 Python 列表

潇潇雨雨 2021-07-30 18:55:38
我想等于 a[0]=recv_pak[0], a[1]=recv_pac[1]... 直到 a[4]。recv_pack 列表有 20 个参数,但我只想选择前 4 个参数。我正在使用此代码行,但我有IndexError: list assignment index out of range错误我该如何解决?while 1:   # sock.send(req)    #print("TX: (%s)" % repr(req))    rec = sock.recv(BUFFER_SIZE)    print("RX: (%s)" % repr(rec))    time.sleep(2)    break print("\nSwitching Plug OFF...")    recv_pack=struct.unpack('12B',rec)    print(recv_pack)    a=[]    for i in range(0,4):        a[i]=recv_pack[i]        print(a[i])
查看完整描述

3 回答

?
肥皂起泡泡

TA贡献1829条经验 获得超6个赞

采用 list.append


前任:


a=[]

for i in range(0,4):

    a.append(recv_pack[i])

    print(a[i])

您也可以使用列表 slicing


前任:


a = recv_pack[:4]

print(a)


查看完整回答
反对 回复 2021-08-03
?
一只萌萌小番薯

TA贡献1795条经验 获得超7个赞

'a' 是一个空列表,但您尝试在第一次迭代中写入元素 [0],该元素尚不存在。

请尝试以下操作,将新元素添加到列表的末尾:

for i in range(0,4):

    a.append(recv_pack[i]) 

    print(a[i])


查看完整回答
反对 回复 2021-08-03
?
侃侃无极

TA贡献2051条经验 获得超10个赞

现在是简单的pythonic版本:

a = recv_pack[:4]

这意味着:“给我一个前四个项目的列表recv_pack并将其绑定到名称'a'”


查看完整回答
反对 回复 2021-08-03
  • 3 回答
  • 0 关注
  • 133 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号