在我的清单中:
animals = [ ['dog', ['bite'] ],
['cat', ['bite', 'scratch'] ],
['bird', ['peck', 'bite'] ], ]
add('bird', 'peck')
add('bird', 'screech')
add('turtle', 'hide')
Run Code Online (Sandbox Code Playgroud)
add函数应该在将它们添加到列表之前检查动物和动作是否尚未添加.有没有办法在不将每个步骤的循环嵌入列表的情况下完成此操作?
您使用的是错误的数据类型.使用dict的set!而非:
def add(key, value, userdict):
userdict.setdefault(key, set())
userdict[key].add(value)
Run Code Online (Sandbox Code Playgroud)
用法:
animaldict = {}
add('bird', 'peck', animaldict)
add('bird', 'screech', animaldict)
add('turtle', 'hide', animaldict)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4273 次 |
| 最近记录: |