У знакомого программист конвертировал кирилические имена в юникод и вот что вышло
#U0441#U0430#U0434 вместо слова сад.
Итерировать и переименовать не проблема, а вот конвертировать из этого чуда уже проблема(.
>>> s = '#U0441#U0430#U0434' >>> >>> out = ''.join(chr(int(i, 16)) for i in s.split('#U') if i) >>> out 'сад' >>>
иначе летит все в пух и прах.
>>> s = '#U0425#U043e#U043b#U043b1' >>> ''.join(chr(int(i, 16)) for i in s.split('#U') if i) 'Хол䎱' >>>
''. join(chr(int(i[:4], 16)) for i in s . split( '#U' ) if i)
str = "#U0425#U043e#U043b#U043b1.jpg" s = str.split('.') print(''.join(chr(int(i[0:4], 16))+i[4:] for i in s[0].split('#U') if i)+'.'+s[1])
но вот с беда с 2 питоном
print(''.join(unichr(int(i[:4], 16)).encode('utf-8')+i[4:] for i in s.split('#U') if i))