Как открыть другой файл, если pandas ничего не может отфильтровать

#python #list #for-loop

Вопрос:

У меня есть каталог с несколькими файлами, которые выглядят как показано ниже, однако вы должны отметить, что на самом деле файл содержит более 100 000 записей. Каждый файл содержит дату в своем названии, например '20210101_filex', '20210102_filex', '20210103_filex' , и т. Д.

Это данные ‘20210102_filex’

 blue black red 250 red black blue 140 black yellow purple 700 orange blue blue 200  

Это данные ‘20210101_filex’

 blue black red 100 red black blue 100 black yellow purple 800 orange blue blue 900  

У меня также есть список, который содержит следующие значения my_list = ['100', '1500', '7500']

Теперь я хочу следующее:

1. Если одно из значений my_list встречается в файле row[3] , я хочу добавить всю запись в new_list.

2. Если одно из значений my_list не встречается в файле row[3] , я хочу, чтобы python открыл файл в каталоге с датой за один день до этого в отношении файла, открытого в первом операторе if.

Это мой код:

 my_directory = ['20210101_filex', '20210102_filex', '20210103_filex'] my_date = '20211102' my_list = ['100', '1500', '800'] new_list = []  for x in my_directory:  if my_date in x:  to_open_file = x  with open(my_directory   '/'   to_open_file, 'r') as input:  reader = csv.reader(input, delimiter = 't')   for row in reader:   if row[3] in my_list:  new_list.append(row)   #If none of the values in my_list are in the file then open one day before   else:  yesterday = datum_tijd_meting_xml - datetime.timedelta(1)  yesterday = datetime.datetime.strftime(yesterday, '%Y%m%d')  if yesterday in x:  second_to_open_file = x  with open(my_directory   '/'   second_to_open_file, 'r'):   reader = csv.reader(input, delimiter = 't')  for row in reader:   if row[3] in my_list:  new_list.append(row)   

Как вы можете видеть в приведенном выше примере, 100, 1500 and 800 их нет, 20210102_filex. поэтому я хочу, чтобы Python заглянул за день до 20210101_filex этого и посмотрел, может ли он найти значения в этом файле и добавить их в список.

Мой желаемый результат:

 my_list = [['blue', 'black', 'red', '100'], ['red', 'black', 'blue', '100']]   

Моя проблема: Я точно не знаю, что происходит, прямо сейчас мой цикл, кажется, вложен, так что кажется, что он никогда не сможет открыть файл за день до этого.

Примечание: Я не хочу использовать для этого Панд, я бы предпочел держать все в курсе.