因此,我有一个实质上检查文件名是否相同的函数。即使键名相同,我也不明白,并且值以不同顺序交换,为什么它输出的文件也不相同。如果它们的顺序完全相同,那么它将起作用。
我确信使用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")