*   >> Чтение Образование Статьи >> science >> programming

ActivePerl типов переменных и Context

ActivePerl типы переменных и контекста Основы ActivePerl - Часть 11 Введение Это часть 11 моей серии, Основы ActivePerl. В этой части серии мы рассмотрим то, что называется типы и то, что также называется скалярный контекст и контекст списка данных ActivePerl. Примечание: Если вы не видите код или, если вы думаете, что-то отсутствует (неработающую ссылку, изображение отсутствует), просто свяжитесь со мной в [email protected]. То есть, свяжитесь со мной для малейшей проблемы у вас есть о том, что вы читаете.

Типы данных в Perl имеет три встроенных типов данных, которые называются скаляры, массивы и хэши. Значение скалярного в простых терминах, скалярная является строка или число. Любая переменная, которая идентифицирует скаляр начинается с $. Скалярное то, что мы были в виду как простой стоимости. Например, мой $ Var; $ Var = "какой-то текст или номер без кавычек"; Мы видели много примеров скаляр. Значение массива Массив представляет собой упорядоченный список скаляров. Мы видели примеры этого. Любая переменная, которая идентифицирует массив должен начинаться с @.

Значение хэш Хэш представляет собой неупорядоченный список скаляров. Основное отличие между хэш и массива является то, что значения хэша индексируются связанных ключей струнных, в то время как значения массива индексируются числами. Любая переменная, которая определяет хэш начинается с%. Мы видели примеры хэшей. Имя переменной Из вышесказанного, мы видим, что переменная начинается либо с, $, @ или%. После этого вы должны иметь буквы или символа подчеркивания. После этого, вы можете иметь любое количество подчеркивания, букв или цифр в любом порядке, чтобы сформировать имя переменной.

Список Список представляет собой набор скаляров, разделенных запятыми, разделенных скобках. Примером является: ("первый", "второй", 3) Есть три скаляры там: две строки и один номер. Вы можете иметь списки с обеих сторон оператора присваивания. Рассмотрим следующую строку: (мой $ за мой $ два, мой $ трех) = ("первый", "второй", 3); Есть два списка: один здесь слева от оператора присваивания, а другая справа от оператора присваивания. Я намеренно сделал оба списка, чтобы иметь три скаляры каждый. Список справа имеет реальные скаляры. Тот слева имеет, но переменных.

Каждый из переменных в списке слева, проведет соответствующую скаляр из списка справа. Я надеюсь, что вы высоко оценивая значение списка в ActivePerl. Читайте и попробуйте следующий код: использовать строгий; печать "Content-Type: текст /HTML \\ п \\ п"; (мой $ за мой $ два, мой $ трех) = ("первый", "второй", 3); печатать $ за; Печать "Печать $ два; печать" печать $ три; печать "Вы должны три скалярные значения отображается список может быть назначен другой список с соответствующими переменными, как показано выше, однако, список может также быть назначен на массив, как показано в следующем коде (чтение и попробовать его).

.: использовать строгое; печать "Content-Type: текст /HTML \\ п \\ п"; мояarr = ("первый", "второй", 3); печатьarr; Этот метод присвоения список является предпочтительным, когда Вы не знаете, количество элементов в списке, или когда список очень длинный аргументов в функцию Мы видели функции печати В первом примере кода выше, мы напечатать $ за;.. Она также может быть "печать ($ один); ", но скобки обычно опускают В одном из предыдущих глав мы увидели что-то вроде: толчок (hisArr (." ххх "," ууу "," ZZZ ")), а является функцией толчок для массив. Она также имеет скобки.

Скобки есть элементы внутри. Здесь я уже упоминал печатные и нажмите Функции. Все, что у вас есть внутри скобок функции, как и в двух предыдущих случаях, называются аргументами. В случае печати выше, аргумент $ одним, который является скаляр. В случае нажатия аргументыhisArr и ("ххх", "ууу", "ZZZ"). Эти два аргумента списки. Массив представляет собой упорядоченный список, и это первый аргумент. Второй аргумент является буквальным список. Крайние кронштейны для аргументов функции могут быть опущены.

Скалярном контексте Если любая операция будет возвращать скаляр или будет иметь в качестве аргумента скаляр, мы говорим ActivePerl работает в скалярном контексте в этой точке. Рассмотрим следующий пример: мой $ VAR = "строка"; Это очень простое утверждение, и это скалярном контексте, так как мы имеем дело с скаляров по обе стороны от оператора присваивания. Рассмотрим следующее. печать ($ один); Аргумент функции печати является скаляром, так что это скалярном контексте.

Список Контекст Если любая операция будет возвращать список или будет иметь список в качестве аргумента, мы говорим ActivePerl работает в контексте списка в этой точке. Рассмотрим следующий пример: (мой $ за мой $ два, мой $ трех) = ("первый", "второй", 3); По обе стороны от оператора присваивания, у нас есть список, поэтому у нас есть списочный контекст. Рассмотрим следующее: толчок (hisArr ("ххх", "ууу", "ZZZ")); Два аргумента функции нажатием списки, поэтому у нас есть списочный контекст. В некоторых случаях Аргументы функций могут быть сделаны из скаляров и списка.

В этом случае ActivePerl работает на обоих контекстах. Примечание: хеш является своего рода список. Условный Контекст В зависимости от состояния, вы можете работать в скалярном или список контексте. Как вы узнаете, ActivePerl, вы сказали эти условия. Я дам лишь несколько примеров здесь. Рассмотрим следующий массив: мояarr = ("HBWE", "FGTR", "HTNK", 4587, 4526, 4053, "АВ12", "GB58", "TG45", "RE69"); После того, как массив создан, его переменная массива будет вести себя как операцию и будет возвращать либо длину (скалярное) массива или списка элементов массива, в зависимости от того, назначен скаляр или массив ( список).

Когда он возвращает скаляр, вы работаете в скалярном контексте. Когда он возвращает список, вы работаете в контексте списка. В следующем коде переменная массива присваивается скалярной, так что возвращает длину массива (то есть, как ActivePerl было сделано, чтобы быть - возвращение скаляр по переменной массива при присвоении скаляр). Читайте и попробовать код.

использовать строгий; печать "Content-Type: текст /HTML \\ п \\ п"; мойarr = ("HBWE", "FGTR", "HTNK", 4587, 4526, 4053, "АВ12", "GB58", "TG45", "RE69"); мой $ бюджетная =arr; печать $ бюджетная; В следующем коде переменная массива присваивается список, так что возвращает список элементов в массиве (то есть, как ActivePerl было сделано, чтобы быть). Читайте и попробовать код.

использовать строгий; печать "Content-Type: текст /HTML \\ п \\ п"; мойarr = ("HBWE", "FGTR", "HTNK", 4587, 4526, 4053, "АВ12", "GB58", "TG45", "RE69"); мойli =arr; печататьli; Хэш ключей и значений функции Revisited В описании Perl или ActivePerl, он сказал, что функция хэш-ключи вернется список всех ключей в хеш, если работать в контексте списка или вернет количество ключей в хэш при работе в скалярном контексте. Таким образом, в контексте списка он возвращает список; в скалярном контексте она возвращает скаляр (число).

Это означает, что если вы присвоить возвращаемое значение функции в массиве, у вас есть список; если назначить его на скаляр у вас есть скаляр. Читайте и попробуйте следующий код, в котором функция клавиш в контексте списка, возвращая список, потому что возвращенное значение присваивается массив. использовать строгий; печать "Content-Type: текст /HTML \\ п \\ п"; мой% fruitColor = (Apple => "фиолетовый", банан => "желтый", Груша => "зеленый", лимон => "зеленый"); моиar = клавиши (%); fruitColor печататьar; Читайте и попробуйте следующий код, в котором функция ключей в скалярном контексте, возвращается скаляр, потому что возвращенное значение присваивается скалярной.

использовать строгий; печать "Content-Type: текст /HTML \\ п \\ п"; мой% fruitColor = (Apple => "фиолетовый", банан => "желтый", Груша => "зеленый", лимон =>

Page   <<       [1] [2] [3] [4] >>
Copyright © 2008 - 2016 Чтение Образование Статьи,https://ru.nmjjxx.com All rights reserved.