python - 根据列表中的名称创建列表
问题描述
我有一个如下所示的 list1
list1 = ['mike', 'sam', 'paul', 'pam', 'lion']
我可以一一指定一个列表名称,如下所示。
for item in list1:
for item in line:
mikelist = []
mikelist.append()
for item in list1:
for item in line:
samlist = []
samlist.append()
for item in list1:
for item in line:
paullist = []
paullist.append()
等等。我如何从 list1 中获取项目并自动在该 for 循环行中为 list1 中的所有项目创建列表,而不是在列表中指定名称来创建新列表和追加?
for item in line:
namefromthelist = []
namefromthelist.append()
解决方案
创建一个字典,名称作为键,列表作为值:
dict = {}
list1 = ['mike', 'sam', 'paul', 'pam', 'lion']
for i in list1:
dict[i] = []
print(dict)
输出:
{'mike': [], 'lion': [], 'paul': [], 'sam': [], 'pam': []}
然后你可以像这样使用它:
dict['mike'].append('blah')
print(dict['mike'])
推荐阅读
- python - extract several fasta file with a list of ID (in order)
- google-maps - Google Maps Directions API 出现错误
- python - 使用样式时如何防止 Matplotlib 覆盖 rcParams?
- r - R按变量名引用过滤列
- testing - Heroku tests started failing overnight? (cannot configure sandbox)
- reactjs - MUI dark theme isn't applied to the background
- node.js - 无法访问 express-handlebars 中的 res.locals.user 变量
- dapper - Dapper 区分返回值和结果集
- r - 根据不同的比例对图的节点进行着色
- mesh - CGAL 在 2D 排列中因插入操作而失败