Python - 初始化多个列表/行
问题描述
这太丑了:
psData = []
nsData = []
msData = []
ckData = []
mAData = []
RData = []
pData = []
有没有办法在一行中声明这些变量?
Is there a way to declare these variables on a single line?
解决方案
alist, blist, clist, dlist, elist = ([] for i in range(5))
上述方法的缺点是,您需要计算 =
左侧的名称数量并且具有完全相同数量的空列表(例如通过 range
调用,或更明确地)在右手边边.
The downside of above approach is, you need to count the number of names on the left of =
and have exactly the same number of empty lists (e.g. via the range
call, or more explicitly) on the right hand
side.
最主要的是,不要使用类似
alist, blist, clist, dlist, elist = [[]] * 5
也没有
alist = blist = clist = dlist = elist = []
这将使所有名称都引用相同空列表!
which would make all names refer to the same empty list!
相关文章