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

删除字典中列表中的所有值

删除字典中列表中的所有值

杨魅力 2021-07-14 17:11:56
我似乎无法弄清楚如何从字典键的列表中删除所有元素。self.pieces = {        'P1': [1, 0],        'P2': [[1, 0], [0, 1]],        'P3': [1, 0],        'P4': [1, 0],        'P5': [1, 0],        'P6': [[1, 0], [1, 0], [1, 0]],        'P7': [1, 0],        'P8': [1, 0],        'R1': [1, 0],        'N1': [1, 0],        'B1': [[1, 0], [1, 0]],        'Q': [1, 0],        'K': [1, 0],        'B2': [1, 0],        'N2': [1, 0],        'R2': [1, 0],    }我努力了:for i in self.pieces:   filter(lambda a: a == '[]', self.pieces[i])还:  for i in self.pieces:      for j in i:           del self.pieces[i][0]以及其他各种没有成功的随机事情。我需要它仍然拥有所有的键和 '[]' 作为没有内部元素的值
查看完整描述

3 回答

?
斯蒂芬大帝

TA贡献1827条经验 获得超8个赞

您可以简单地将所有值重新分配给一个空列表

pieces = {k : [] for k in pieces}

要么

for k in pieces:
    pieces[k].clear()


查看完整回答
反对 回复 2021-07-27
?
长风秋雁

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

我想一个好的解决方案可能是:


pieces = {

        'P1': [1, 0],

        'P2': [[1, 0], [0, 1]],

        'P3': [1, 0],

        'P4': [1, 0],

        'P5': [1, 0],

        'P6': [[1, 0], [1, 0], [1, 0]],

        'P7': [1, 0],

        'P8': [1, 0],

        'R1': [1, 0],

        'N1': [1, 0],

        'B1': [[1, 0], [1, 0]],

        'Q': [1, 0],

        'K': [1, 0],

        'B2': [1, 0],

        'N2': [1, 0],

        'R2': [1, 0],

    }


for p in pieces: 

  pieces[p] = []


print(pieces)

输出是


{'P1': [], 'P2': [], 'P3': [], 'P4': [], 'P5': [], 'P6': [], 'P7': [], 'P8': [], 'R1': [], 'N1': [], 'B1': [], 'Q': [], 'K': [], 'B2': [], 'N2': [], 'R2': []}


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

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信