Итак, у меня есть функция, которая по сути проверяет, не совпадают ли имена файлов.Я не понимаю, даже если имена ключей совпадают, а значения меняются местами в другом порядке, почему выводится, что файлы не совпадают.Если они в том же порядке, то это сработает.
Я уверен, что с помощью dict порядок не имеет значения, но в моем случае кажется, что порядок имеет значение.Во-первых, я хочу распечатать имена файлов, у которых есть совпадение, а во-вторых, я хочу распечатать имена файлов, у которых нет совпадений.Я начал с моего кода, и вот что у меня получилось:
import os
import json
def sort_files():
"""Sort files in ascending order"""
files = os.listdir('dates/')
return sorted(files, reverse=True)
def current_day():
"""Get the current day file"""
return sort_files()[0]
def previous_day():
"""Get the previous day file"""
return sort_files()[1]
def compare_files():
with open('dates/' + current_day(), 'r') as current_data_file, open('dates/' + previous_day(),
'r') as pre_data_file:
for current_data, previous_data in zip(current_data_file, pre_data_file):
data_current = json.loads(current_data)
data_previous = json.loads(previous_data)
current_fn = data_current['File Name']
previous_fn = data_previous['File Name']
if sorted(previous_fn) == sorted(current_fn):
print("OK")
return
if data_previous != data_current:
print("Files are not the same")
return
else:
print("Not the same")