Некоторые сведения о Perl 5: различия между версиями

Материал из Викиучебника — открытых книг для открытого мира
Содержимое удалено Содержимое добавлено
Нет описания правки
м Убраны избыточные элементы разметки.
Строка 1: Строка 1:
<br />
=== Переменные ===
=== Переменные ===


Строка 10: Строка 9:
"fruit" => "watermelon");
"fruit" => "watermelon");
</source>
</source>

=== Подробно о массивах ===
=== Подробно о массивах ===


=== Подробно о векторах ===
=== Подробно о векторах ===

=== Типы чисел в Perl ===
=== Типы чисел в Perl ===
'''<span style="color:orange">bool одно из двух значений '''<span style="color:purple">'''( TRUE, FALSE )'''</span>'''</span>'''
'''<span style="color:orange">bool одно из двух значений '''<span style="color:purple">'''( TRUE, FALSE )'''</span>'''</span>'''
Строка 90: Строка 91:
unless ($a == 10);
unless ($a == 10);
</source>
</source>

{{закрыто-конец}}
{{Внимание|Учебник неправильно построен по содержанию.}}
{{Внимание|Учебник неправильно построен по содержанию.}}
{{Info|Мало ссылок. Дополните содержания учебника.}}
{{Info|Мало ссылок. Дополните содержания учебника.}}

Версия от 18:43, 14 декабря 2013

Переменные

Переменные в Perl обозначаются символами $ (скаляры), @ (векторы или массивы) или % (таблицы или ассоциативные массивы) перед именем. Например:

my $answer = 42;
my @name = ("Smith", "John");
my %favorites
    =  ("color" => "green",
        "fruit" => "watermelon");

Подробно о массивах

Подробно о векторах

Типы чисел в Perl

bool одно из двух значений ( TRUE, FALSE )
+/- плюс/минус

Функция print

Функция print последовательно выводит аргументы в указанный поток (по-умолчанию: на стандартный вывод.) Например:

print ("Hello", @name, "!\n"); # предполагаем local $, = " ";
print STDERR ("ERROR!\n");

Арифметические операторы

Perl поддерживает вполне обычный набор арифметических операторов:

+, -, *, /, %
сложение, вычитание, умножение, частное и остаток от деления, соответственно;
&, |
поразрядные битовые умножение и сложение; пример: 123 & 456 → 72 (001111011₂ ⊙ 111001000₂ = 001001000₂.)
<<, >>
целочисленный битовый сдвиг (умножение на 2ⁿ.)

\

Вне двойный кавычек используется как самостоятельный оператор создания ссылки на переменную, подобно:

my $answer = 1;
my $reference = \$answer;
$$reference = 42;
# переменная $answer теперь хранит значение 42

В двойных кавычках указывает на особое значение следующего символа. В частности:

  • \n — разрыв (перевод) строки;
  • \tтабуляция;
  • \N{имя} — символ по имени или кодовой позиции Unicode (с ведущим U+);
  • \" — двойная кавычка (без экранирующего \ двойная кавычка стала бы закрывающей для данной строковой константы.)

Примеры:

"Текст \"текст\", текст";
"\N{U+263a}\n"; # → "☺\n"

NB: в некоторых случаях, форма "Текст «текст», текст" может быть более уместна, чем "Текст \"текст\", текст".

Формы q {} и qq {}

Альтернатива одинарным и двойным кавычкам, позволяющая применять произвольный разделитель. Подобно:

q /Текст "текст", текст/
qq {Текст "текст", текст}

Операторы if, unless

Синтаксис
if (условие) блок операторов

Пример:

my $a = 10;
if ($a == 10) {
    print "a равна 10";
}
unless ($a == 10) {
    print "a не равна 10";
}

Отметим, что Perl позволяет указывать операторы if и unless после условной ветви, подобно:

print "a равна 10"
    if ($a == 10);
print "a не равна 10"
    unless ($a == 10);


Информация

Мало ссылок. Дополните содержания учебника.