rupython 1.0.8__tar.gz → 1.0.9__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {rupython-1.0.8 → rupython-1.0.9}/PKG-INFO +2 -2
- {rupython-1.0.8 → rupython-1.0.9}/README.md +1 -1
- {rupython-1.0.8 → rupython-1.0.9}/rupython//320/237/321/200/320/265/320/276/320/261/321/200/320/260/320/267/320/276/320/262/320/260/321/202/320/265/320/273/321/214.py +18 -2
- {rupython-1.0.8 → rupython-1.0.9}/rupython.egg-info/PKG-INFO +2 -2
- {rupython-1.0.8 → rupython-1.0.9}/setup.py +1 -1
- {rupython-1.0.8 → rupython-1.0.9}/LICENSE +0 -0
- {rupython-1.0.8 → rupython-1.0.9}/rupython/__main__.py +0 -0
- {rupython-1.0.8 → rupython-1.0.9}/rupython/__/320/227/320/260/320/263/320/276/320/273/320/276/320/262/320/276/321/207/320/275/321/213/320/271_/320/272/320/276/320/264__.py" +0 -0
- {rupython-1.0.8 → rupython-1.0.9}/rupython//320/234/320/276/320/264/321/203/320/273/320/270//320/234/320/260/321/202/320/265/320/274.py" +0 -0
- {rupython-1.0.8 → rupython-1.0.9}/rupython//320/234/320/276/320/264/321/203/320/273/320/270//320/240/320/265/320/263/320/222/321/213/321/200.py" +0 -0
- {rupython-1.0.8 → rupython-1.0.9}/rupython//320/234/320/276/320/264/321/203/320/273/320/270//320/241/320/273/321/203/321/207.py" +0 -0
- {rupython-1.0.8 → rupython-1.0.9}/rupython.egg-info/SOURCES.txt +0 -0
- {rupython-1.0.8 → rupython-1.0.9}/rupython.egg-info/dependency_links.txt +0 -0
- {rupython-1.0.8 → rupython-1.0.9}/rupython.egg-info/top_level.txt +0 -0
- {rupython-1.0.8 → rupython-1.0.9}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: rupython
|
3
|
-
Version: 1.0.
|
3
|
+
Version: 1.0.9
|
4
4
|
Summary: Исполнитель кода Русского Питона
|
5
5
|
Description-Content-Type: text/markdown
|
6
6
|
License-File: LICENSE
|
@@ -27,7 +27,7 @@ ftype "Код на Русском Питоне"=py -m rupython "%%1" %%*
|
|
27
27
|
|
28
28
|
```
|
29
29
|
Функция НОД(*числа):
|
30
|
-
|
30
|
+
f = фун a, b: a если b == 0 иначе f(b, a % b)
|
31
31
|
Вернуть Свёртка(фун a, b: f(a, b), числа)
|
32
32
|
|
33
33
|
Функция НОК(*числа):
|
@@ -432,10 +432,26 @@ def Обработать_импорт(импорт, путь_к_текущему
|
|
432
432
|
файл.close()
|
433
433
|
Временные_файлы.append(путь)
|
434
434
|
|
435
|
+
def Проверить_соответствие_слов(слова, путь_к_файлу):
|
436
|
+
def Вывести_исключение(инструкция):
|
437
|
+
искл = SyntaxError('Ошибка употребления инструкции "' + инструкция + '".')
|
438
|
+
Вывести_текст_исключения(искл, 'при разборе кода', путь_к_файлу)
|
439
|
+
|
440
|
+
for поз in [i for i, x in enumerate(слова) if x[1] == 'Вернуть']:
|
441
|
+
if поз == len(слова) - 1 or слова[поз + 1][1] == '\n':
|
442
|
+
Вывести_исключение('Вернуть'); return False
|
443
|
+
|
444
|
+
for поз in [i for i, x in enumerate(слова) if x[1] == 'Возврат']:
|
445
|
+
if поз != len(слова) - 1 and слова[поз + 1][1] != '\n':
|
446
|
+
Вывести_исключение('Возврат'); return False
|
447
|
+
|
448
|
+
return True
|
449
|
+
|
435
450
|
Циклы_со_счётчиком = []
|
436
451
|
|
437
452
|
def Преобразовать_код(путь_к_файлу):
|
438
453
|
слова = list(Прочитать_слова(open(путь_к_файлу, encoding='utf-8').readline))
|
454
|
+
if not Проверить_соответствие_слов(слова, путь_к_файлу): return
|
439
455
|
|
440
456
|
# обрабатываем импорты
|
441
457
|
импорты = []
|
@@ -584,10 +600,10 @@ def Вывести_текст_исключения(исключение, заг
|
|
584
600
|
exc_traceback=исключение.__traceback__,
|
585
601
|
exc_value=исключение
|
586
602
|
).stack[-сч]
|
587
|
-
except: break
|
603
|
+
except: сч = -1; break
|
588
604
|
if искл.filename == назв_исп_ф: break
|
589
605
|
сч += 1
|
590
|
-
if
|
606
|
+
if сч != -1 and искл.filename == назв_исп_ф:
|
591
607
|
номер_строки = искл.lineno - 2
|
592
608
|
else:
|
593
609
|
try: номер_строки = исключение.lineno - 2
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: rupython
|
3
|
-
Version: 1.0.
|
3
|
+
Version: 1.0.9
|
4
4
|
Summary: Исполнитель кода Русского Питона
|
5
5
|
Description-Content-Type: text/markdown
|
6
6
|
License-File: LICENSE
|
@@ -27,7 +27,7 @@ ftype "Код на Русском Питоне"=py -m rupython "%%1" %%*
|
|
27
27
|
|
28
28
|
```
|
29
29
|
Функция НОД(*числа):
|
30
|
-
|
30
|
+
f = фун a, b: a если b == 0 иначе f(b, a % b)
|
31
31
|
Вернуть Свёртка(фун a, b: f(a, b), числа)
|
32
32
|
|
33
33
|
Функция НОК(*числа):
|
@@ -3,7 +3,7 @@ from pathlib import Path as Путь
|
|
3
3
|
|
4
4
|
Установить(
|
5
5
|
name = 'rupython',
|
6
|
-
version = '1.0.
|
6
|
+
version = '1.0.9',
|
7
7
|
description = "Исполнитель кода Русского Питона",
|
8
8
|
packages = [ 'rupython', 'rupython.Модули' ],
|
9
9
|
long_description = (Путь(__file__).parent / "README.md").read_text("UTF-8"),
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|