Python 将不同来源的数据分离到列表中进行分析

Python 将不同来源的数据分离到列表中进行分析,python,list,python-2.7,binary,Python,List,Python 2.7,Binary,这段代码从另一个程序获取数据,并查看系统驱动器或任何其他驱动器,并查找匹配数据集的位置。这是必需的,因为在分析过程中,有时我们必须找到原始数据集并复制掉一些未在Powershell中复制的丢失文件(出于某种原因)。系统上有许多驱动器和许多数据集 我遇到的问题是,每次代码生成用于解析的数据集(来自其中一个驱动器)时,它只是将新数据集附加到前一个数据集的末尾。我一直试图将每个新列表分成一个列表,但没有成功。它可以很好地扫描每个驱动器,但追加是我在这段代码中要处理的问题。无论如何,我只需要分别分析每个

这段代码从另一个程序获取数据,并查看系统驱动器或任何其他驱动器,并查找匹配数据集的位置。这是必需的,因为在分析过程中,有时我们必须找到原始数据集并复制掉一些未在Powershell中复制的丢失文件(出于某种原因)。系统上有许多驱动器和许多数据集

我遇到的问题是,每次代码生成用于解析的数据集(来自其中一个驱动器)时,它只是将新数据集附加到前一个数据集的末尾。我一直试图将每个新列表分成一个列表,但没有成功。它可以很好地扫描每个驱动器,但追加是我在这段代码中要处理的问题。无论如何,我只需要分别分析每个驱动器的数据集

def binarySearch():
    n = 0
    groupList = []
    dataList = [] ## tried making list of lists using this list
    setFolder = []
    driveList = []
    driveList.append('Z:\\\\')
    driveList.append('Q:\\\\')
    driveList.append('H:\\\\')
    driveList.append('E:\Test Search')
    for drives in driveList:
        groupList.append(drives)
    print groupList
    for items in groupList:
        os.chdir(items) ## creates a list of lists for each drive
        print 'Scanning drive:',os.getcwd()
        for line in os.listdir(items):
            if len(line)==3 and line != 'sec':
                setFolder.append(int(line)) ##appends new dataset to old one
        setFolder.sort()
        n = n + 1
        continue
我非常确定这一行代码需要发生一些事情:

 setFolder.append(int(line)) ##appends new dataset to old one

从现有列表文件夹中创建新列表的位置。或者,如果我可以在每次迭代中创建一个新的列表,该列表也可以工作。

您只会添加到
setFolder
,而不会添加到
dataList
。你可能想做一些类似的事情

for items in groupList:
    setFolder = []
    os.chdir(items) ## creates a list of lists for each drive
    print 'Scanning drive:',os.getcwd()
    for line in os.listdir(items):
        if len(line)==3 and line != 'sec':
            setFolder.append(int(line)) ##appends new dataset to old one
    setFolder.sort()
    dataList.append(setFolder)

我是否做了一个糟糕的工作来展示这一点,导致没有答复?如果是这样的话(很有可能),我该怎么做才能得到回复呢?感谢您的输入,但尽管这确实在setFolder中创建了一个数据列表,但它并没有阻止每次迭代都附加dataList。因此,在第二次迭代或第二个驱动器上,它既有第一次迭代的数据,也有第二次迭代的数据。您是否将
setFolder=[]
行放在groupList:循环中项目的
中?这似乎有一个类似的问题。我想我刚刚解决了它。但是将setFolder列表移动到groupList循环中是问题的一半。另一半只是压痕。我需要将代码的其余部分缩进一个缩进到driveList循环的右下方。真傻。非常感谢,我相信你,因为你帮助了我,而我今天没有得到多少爱。