{"id":16623890,"url":"https://github.com/markcda/violetta2","last_synced_at":"2026-05-20T16:38:50.509Z","repository":{"id":62587497,"uuid":"234361980","full_name":"markcda/violetta2","owner":"markcda","description":"Translator from Python to Russian pseudo-language and vice versa. Makes programming more accessible.","archived":false,"fork":false,"pushed_at":"2020-06-14T04:54:05.000Z","size":36,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-13T22:45:55.103Z","etag":null,"topics":["python","translator"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/markcda.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-01-16T16:26:10.000Z","updated_at":"2023-09-15T20:25:27.000Z","dependencies_parsed_at":"2022-11-03T22:42:52.859Z","dependency_job_id":null,"html_url":"https://github.com/markcda/violetta2","commit_stats":null,"previous_names":["kollieartwolf/violetta2"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markcda%2Fvioletta2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markcda%2Fvioletta2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markcda%2Fvioletta2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/markcda%2Fvioletta2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/markcda","download_url":"https://codeload.github.com/markcda/violetta2/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243021778,"owners_count":20223068,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["python","translator"],"created_at":"2024-10-12T03:25:19.742Z","updated_at":"2026-05-20T16:38:45.475Z","avatar_url":"https://github.com/markcda.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# violetta2\n\nТранслятор с Python на русский псевдоязык и обратно. Делает программирование более доступным для людей с плохим восприятием английского.\n\nPython подходит для обучения детей по нескольким причинам: \n\n1. Python - очень простой язык, на котором просто программировать\n2. Python 3 поддерживает символы Unicode в названиях переменных\n2. Python - интерпретируемый язык, что делает его запуск удобнее.\n\nДля облегчения понимания логики языка violetta2 переводит основные английские ключевые слова и методы на русский, что облегчает читабельность кода для тех, кто не владеет английским в должной степени.\n\n## Пример работы\n\nКод на Python:\n\n```\ndef Split2(A):\n    B = list()\n    C = list()\n    for el in A:\n        if el % 2 == 0:\n            B.append(el)\n        else:\n            C.append(el)\n    return B, C\n\nA = list(map(int, input('Введите элементы массива через пробел: ').split()))\n\nB, C = Split2(A)\nprint(B, len(B))\nprint(C, len(C))\n```\n\nКод на Violetta2:\n\n```\nзадать Split2(A):\n    B = список()\n    C = список()\n    для el в A:\n        если el % 2 == 0:\n            B.дополнить(el)\n        иначе:\n            C.дополнить(el)\n    вернуть B, C\n\nA = список(карта(целое, ввести('Введите элементы массива через пробел: ').разделить()))\n\nB, C = Split2(A)\nвывести(B, длина(B))\nвывести(C, длина(C))\n```\n\nМожно дополнить перевод:\n\n```\nзадать Разделить(Числа):\n    Чётные = список()\n    Нечётные = список()\n    для элемент в Числа:\n        если элемент % 2 == 0:\n            Чётные.дополнить(элемент)\n        иначе:\n            Нечётные.дополнить(элемент)\n    вернуть Чётные, Нечётные\n\nЧисла = список(карта(целое, ввести('Введите элементы массива через пробел: ').разделить()))\n\nЧётные, Нечётные = Разделить(Числа)\nвывести(Чётные, длина(Чётные))\nвывести(Нечётные, длина(Нечётные))\n```\n\n## Использование\n\n`$ python -m vio2 -v \u003cfilename\u003e` - перевести файл с Python на Violetta2  \n`$ python -m vio2 -p \u003cfilename\u003e` - перевести файл с Violetta2 на Python  \n`$ python -m vio2` - режим интерактивной оболочки\n\n### Установка\n\n`pip install vio2`\n\n### Зависимости и требования\n\nЗависимостей нет. Требование к версии Python: \u003e=3.8.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarkcda%2Fvioletta2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmarkcda%2Fvioletta2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmarkcda%2Fvioletta2/lists"}