繁体   English   中英

Python:将列表分成多个列表

[英]Python: Splitting lists into multiple lists

在python中,假设我有一个列表:

instruments = ['apd', 'dd', 'dow', 'ecl']

我如何拆分这些列表,以便创建:

apd[]
dd[]
dow[]
ecl[]

谢谢您的帮助。

您可以这样做:

dictionaries = {i:[] for i in instruments}

您将以这种方式引用每个列表:

dictionaries['apd']
dictionaries['dd']
dictionaries['dow']
dictionaries['ecl']

与将列表实际包含在当前名称空间中相比,这被认为是更好的做法,因为它既会污染又会导致异常。

mshsayem具有将列表放置在当前范围内的方法,但问题是,将列表放在当前范围内有什么好处?

标准用例:

  • 您已经知道项目的名称,并想直接通过名称来引用它们,即apd.append
  • 您尚不知道名称,但将使用evallocals来获取列表,即eval('apd').appendlocals()['apd'].append

两者都可以使用字典来满足:

  • dictionaries['<some name can be set programatically or using a constant>'].append

尝试这个:

instruments = ['apd', 'dd', 'dow', 'ecl']
l_dict = locals()
for i in instruments:
    l_dict[i] = []

这将在本地范围内创建apddddowecl列表。 Snakes和Cofee的想法更好。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM