Я пытаюсь заменить старые имена файлов (которые уже загружены и распознаны в графической библиотеке на одном хосте) на что-то другое (уже существующее в медиабиблиотеке на другом хосте).Есть ли лучший способ сделать замену, руководствуясь гигантской таблицей поиска?
У меня есть сценарий Python написано так:
def imageFilesSub(oldFileName):
imageDict = {
'Switzer_Falls_16_140L.jpg': 'Switzer_Falls_140_04232016.jpg',
...
'Switzer_Falls_16_049L.jpg': 'Switzer_Falls_049_04232016.jpg',
'Switzer_Falls_09_048L.jpg': 'Switzer_Falls_048_03072009.jpg',
...
'Switzer_Falls_09_013L.jpg': 'Switzer_Falls_013_03072009.jpg',
'Pasadena_001L.jpg': 'Pasadena_001_04232016.jpg',
'Switzer_Falls_03_015L.jpg': 'Switzer_Falls_015_02022003.jpg',
'Tunnel_View_03_010L.jpg': 'Tunnel_View_010_05102003.jpg',
...
}
newFileName = imageDict[oldFileName]
return newFileName
blah = imageFilesSub('Switzer_Falls_16_049L.jpg')
print(blah)
Что будет напечатано в:
'Switzer_Falls_049_04232016.jpg'
, который желаемого файла.
Таким образом, вопрос заключается в следующем:
Можно ли выполнить эту замену без необходимости, чтобы сделать эту imageDict, содержащую 42000 уникальных ключей на основе старого файла (как я бы 42000 имен файлов необходимости пройти это имя файла преобразование)?
Есть ли лучший способ выполнить эту задачу в целом? Неужели я неправильно делаю эту проблему неправильно или неэффективно?
Благодаря
Если imageDict не изменится, я хотел бы сохранить его из функции или в закрытии. Если вам нужно его отредактировать, то, вероятно, для него новый класс. – DaveQ
Есть ли какой-либо шаблон или правило для заменяющих имен? Или где-нибудь вы можете вытащить информацию о замене? Там должно быть что-то. – user2357112
@DaveQ Если бы я должен был сделать этот класс, как мне это сделать? Я не вижу связи с чтением документации по классам – Johnny