Буду благодарен, если кто-нибудь сможет мне помочь с этой проблемой!У меня есть пустой файл (в реальной программе есть некоторые данные), и его имя содержит греческие буквы, например, «Σ2262.txt».Моя цель - преобразовать все греческие буквы латинского алфавита, например, греческую букву "Σ" в латинскую "S".Мой код выглядит следующим образом:
for dirpath, dirnames, filenames in os.walk(FOLDER_PATH, topdown=True):
for name in filenames:
if name.endswith('2262.txt'):
old_name = name
#new = re.sub('Σ', 'S', name)
for char in name:
print char
#print grToLat.get(char)
name = re.sub(char, grToLat.get(char), name)
print "GrToLat: "+ name
os.rename(os.path.join(dirpath, old_name),os.path.join(dirpath, name))
Я также создал словарь, который отображает каждую греческую букву на соответствующую латинскую букву, как показано ниже:
grToLat = {
'Α':'A', 'α':'a', 'ά':'a', 'Β':'B', 'β':'b',
'Γ':'G', 'γ':'g', 'Δ':'D', 'δ':'d', 'Ε':'E',
'έ':'e', 'ε':'e', 'Ζ':'Z', 'ζ':'z', 'Η':'H',
'η':'h', 'ή':'h', 'Θ':'U', 'θ':'u', 'Ι':'I',
'ι':'i', 'ί':'i', 'Κ':'K', 'κ':'k', 'Λ':'L',
'λ':'l', 'Μ':'M', 'μ':'m', 'Ν':'N', 'ν':'n',
'Ξ':'J', 'ξ':'j', 'Ο':'O', 'ο':'o', 'ό':'o',
'Π':'P', 'π':'p', 'Ρ':'R', 'ρ':'r', 'Σ':'S',
'ς':'s', 'σ':'s', 'Τ':'T', 'τ':'t', 'Υ':'Y',
'ύ':'y', 'υ':'y', 'Φ':'F', 'φ':'f', 'Χ':'X',
'χ':'x', 'Ψ':'C', 'ψ':'c', 'ω':'v', 'ώ':'v',
'Ω':'V'
}
, где FOLDER_PATH содержит мой файл.С помощью приведенного выше кода кажется, что греческая буква "Σ" не соответствует ни одной латинской букве.Что в этом странного, так это то, что даже если мы раскомментируем строку и попробуем ее жестко закодировать, больше ничего не случится!
new = re.sub('Σ', 'S', name)
Что я делаю не так?Я использую python2, моя операционная система Windows 10.