Pashon

Материал из Викиучебника — открытых книг для открытого мира
Перейти к навигации Перейти к поиску

Решили программировать на Python, но нет интерпретатора? Не проблема, если у вас установлен PascalABC.Net. Ведь уже есть библиотека Pashon (имя получено сложение первых трех букв Pascal и последних Python). Она позволяет создать имитацию того, что Вы пишите на Питоне. Например, сравните эти 3 программы:

var
 d:integer;
begin
 readln(d); writeln(length(inttostr(d)));
end.
{$reference PythonAs.dll}
var
 d:integer;
begin
 d:=main.input_(); main.print_(main.len_(d));
end.
{или более кратко:}
{$reference PythonAs.dll}
var
 d:integer;
begin
 d:=input_(); print_(len_(d));
end.
d=input() print(len(d))

Первая программа - чистый PascalABC.Net. Вторая - с использованием PythonAs.dll. Третья - на языке Python.

Заметьте сходство последней и второй программ. Они чем то похожи. Хоть первая из них и длиннее потому че как бы не казалось нам, но это Паскаль.

Плюсы этой библиотеки:

  • Код становится похож на Питон.
  • Нет разделения на процедуры и функции (есть только первые).

Функции библиотеки[править]

  1. Main.Print_() - выводит что-то на экран.
  2. Main.Str_() - преобразовывает к str.
  3. Main.Float_() - преобразовывает к float.
  4. Main.Int_() - преобразовывает к int.
  5. Main.Sep__() - устанавливает параметр sep как в Питоне.
  6. Main.End__() - устанавливает параметр end как в Питоне.
  7. Main.Open_() - открывает файл как open() в Питоне.
  8. Main.len() - получает длину строки или числа.
  9. Main.Stdin_() аналогична Main.Input_().
  10. Main.Stdout_() аналогична Main.Print_().

Попробуйте написать программу которая узнает длину числа и если оно большое, то установит длину числа.

{$reference PythonAs.dll}
Var
 k:integer;
Begin
 K:=input_();
 If len(k)>5 then
  K:=width_(d,5);
End.

Типы[править]

  1. Str эквивалент String в Pascal.
  2. Float эквивалент Real в Pascal.
  3. Int эквивалент Integer в Pascal.