将用户输入的值与列表中的迭代值进行比较

时间:2017-07-07 15:24:37

标签: string list python-3.x list-comprehension typeerror

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

以下是代码:

<div class="foo">
  Hover over me
</div>

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

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])

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

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

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

如果我能得到任何帮助,我将非常感激:)

1 个答案:

答案 0 :(得分:0)

所以我修复了它,错误本身是通过替换&#34; file&#34;与&#34;我&#34;。知道这将是一件小而简单的事情。