我有一个返回列表的代码,看起来像这样
[user.name for user in Model.field.filter()]
我知道这会返回一个用户名列表,但我想知道是否可以返回list
的{{1}}?
,例如
dict
答案 0 :(得分:1)
一种简单的方法是为列表理解中的每个条目构建一个dict
。
e.g。
[{'name':user.name, 'email': user.email} for user in Model.field.filter()]
答案 1 :(得分:0)
字典会有唯一的键,您可以在其中列出' name'和'电子邮件'如果你要重复许多名字/电子邮件,那就行不通了。没有提到你不能回归'但是,如果是列表中的字典,您可以create one。现在,如果你有你的名字和电子邮件的密钥,那么dict就会像namedict = {"key1":"name1","key2":"name2"}
一样创建。我会把它分成两个序列,一个用于名称,一个用于电子邮件。只有这样你才能通过namedict["key1"]
如果您的姓名"变量不是那么变量;)(就像你想要的那样"名称"对于你的每一个独特" name1"然后我认为使用pandas数据帧会更理想。这种方式您只需要添加" name"一次,作为名称列表的标题,并且可以将其与电子邮件放在同一个变量中,您也可以在其中执行相同的操作。您make a dataframe by去:
d= {'name': ["name1", "name2"], 'email': ["email1", "email2"]}
df = pd.DataFrame(data=d)
我包含了dict部分来回答你的实际问题但总的来说,我可以看到,数据框架更适合你的目的。