Skip to content

Instantly share code, notes, and snippets.

@ledovsky
Last active March 30, 2024 21:37
Show Gist options
  • Save ledovsky/6398962 to your computer and use it in GitHub Desktop.
Save ledovsky/6398962 to your computer and use it in GitHub Desktop.
Транслитерация на python
# name: это строка которую транслитим
def transliterate(name):
"""
Автор: LarsKort
Дата: 16/07/2011; 1:05 GMT-4;
Не претендую на "хорошесть" словарика. В моем случае и такой пойдет,
вы всегда сможете добавить свои символы и даже слова. Только
это нужно делать в обоих списках, иначе будет ошибка.
"""
# Слоаврь с заменами
slovar = {'а':'a','б':'b','в':'v','г':'g','д':'d','е':'e','ё':'yo',
'ж':'zh','з':'z','и':'i','й':'i','к':'k','л':'l','м':'m','н':'n',
'о':'o','п':'p','р':'r','с':'s','т':'t','у':'u','ф':'f','х':'h',
'ц':'c','ч':'ch','ш':'sh','щ':'sch','ъ':'','ы':'y','ь':'','э':'e',
'ю':'u','я':'ya', 'А':'A','Б':'B','В':'V','Г':'G','Д':'D','Е':'E','Ё':'YO',
'Ж':'ZH','З':'Z','И':'I','Й':'I','К':'K','Л':'L','М':'M','Н':'N',
'О':'O','П':'P','Р':'R','С':'S','Т':'T','У':'U','Ф':'F','Х':'H',
'Ц':'C','Ч':'CH','Ш':'SH','Щ':'SCH','Ъ':'','Ы':'y','Ь':'','Э':'E',
'Ю':'U','Я':'YA',',':'','?':'',' ':'_','~':'','!':'','@':'','#':'',
'$':'','%':'','^':'','&':'','*':'','(':'',')':'','-':'','=':'','+':'',
':':'',';':'','<':'','>':'','\'':'','"':'','\\':'','/':'','№':'',
'[':'',']':'','{':'','}':'','ґ':'','ї':'', 'є':'','Ґ':'g','Ї':'i',
'Є':'e', '—':''}
# Циклически заменяем все буквы в строке
for key in slovar:
name = name.replace(key, slovar[key])
return name
@petrovkarmm
Copy link

Господа, не занимайтесь херней. Транслитерацию надо делать в обратном порядке - с латиницы на русский , чтобы помочь русским людям читать английские слова без знания транскрипции. А вы помогаете буржуям которые во первых вас ненависят, а во вторых им русский на хер не нужен.

Не согласен. Сам сейчас проект на django пишу, беру слаги из тайтла, по итогу джанговский слагофай не пропускат русские символы, приходится сторонние библиотеки искать, что перед сохранением тайтл для слага менял XD. Ситуации то разные бывают.

@ergodeath
Copy link

Господа, не занимайтесь херней. Транслитерацию надо делать в обратном порядке - с латиницы на русский , чтобы помочь русским людям читать английские слова без знания транскрипции. А вы помогаете буржуям которые во первых вас ненависят, а во вторых им русский на хер не нужен.

сильно

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment