2017-07-07 97 views
-1

我试图比较文件列表中的值(命名为日期)到用户输入的开始日期和结束日期,但是我在迭代时遇到了一些麻烦通过列表中的值进行比较。比较用户输入的值与列表中的迭代值

下面是代码:

import os 
import datetime 
from tkinter.filedialog import askdirectory 
x = askdirectory() 
start = input('Enter start date (ddmmyyyy): ') 
    end = input('Enter end date (ddmmyyyy): ') 
    start = datetime.datetime.strptime(start, "%d%m%Y").strftime("%Y%m%d") 
    end = datetime.datetime.strptime(end, "%d%m%Y").strftime("%Y%m%d") 
    start = int(start) 
    end = int(end) 

for files in os.walk(x): 
     file = files[2] 
     if '2' in file[1]: 
      file = [int(i) for i in file] 
      print(len(file)) 
      for i in file: 
       if start >= file >= end: 
        fr.file_reader(time,rdata,intensity,files[i]) 
        print(files[i]) 

当我运行它,我得到以下错误:

TypeError: '>=' not supported between instances of 'int' and 'list' 

我曾尝试输入转换为整数,尝试转换列表本身整数,但没有帮助。我知道目前它正在读取文件,并将其作为if循环中的整个列表,我只是希望它读取第i个文件并迭代,以便使用我的工作文件读取程序读取该文件。我无法解决如何实现这一目标。

这是我的文件列表中前10个文件的样子。这是全长312项,所以我不会在这里复制一切。

['20151123000103', '20151123220540', '20151124000043', '20151124003712', '20151125000055', '20151125070850', '20151126000101', '20151126000204', '20151126000330', '20151126000513'] 

如果我能得到任何帮助,这一点,我将感激不尽:)

回答

0

所以我固定它,错误本身是固定用“我”代替“文件”。知道这将是小而简单的事情。