Как искать область определения функции: Как найти область определения функции?

Содержание

«Что такое область определения функции. и как ее находить?» — Яндекс Кью

Популярное

Сообщества

Точные науки

Анонимный вопрос

  ·

79,9 K

Ответить2Уточнить

Ольга Окунькова

Образование

186

Учитель математики в средней школе И ВУЗе. Не учу жизни, учу решать задачи. Готовлю к ОГЭ…  · 10 авг 2019

Функции, в школьном курсе математики, рассматривают в двумерной системе координат (чаще всего это x и у). Функций очень много. Но в школе проходят стандартные (можно сказать типовые). Область определения это те значения, которые функция может принимать.
Линейная функция определена везде. Возьмём гиперболу, точнее частный ее случай. y=1/x, но мы знаем, что на 0 делить нельзя, появляется ограничение х не равен 0. Т.е. при х=0 функции не существует. На графике это выглядит как разрыв функции в этом месте.

25,5 K

Комментировать ответ…Комментировать…

Александр Воронов

1,1 K

Обожаю точные науки и испытываю огромный интерес к творчеству. При таком сочетании…  · 3 нояб 2018

Область определения — это все значения, которые может принимать аргумент функции.

Пример: y = 5 * x;

Здесь «x» может быть любым числом.

Пример: 1 / x — 5;

А здесь «x» не может быть равен 5, но может быть любым другим числом, ведь результата деления на 0 не приняли.

17,0 K

Комментировать ответ…Комментировать…

Первый

Валерий Смогунов

149

20 сент 2020

Отвечает

Валерий Смогунов

Есть уравнение, например, y=x+5; Область определения функции — это множество чисел Х, которые можно подставить в это уравнение. Всевозможные значения Y называются областью значений функции. Скорее всего так) Удачи! Читать далее

Комментировать ответ…Комментировать…

Виталий Новиков

-4

16 июн 2021

Ольга, почему вы решили, что y=1/x — функция? Где описание того, какое нагромождение всяких знаков типа «x»,»y» «=», «+» и т.д. представляет собой некое допустимое выражение, которое можно было бы назвать функцией? Ведь не кажется ли вам, что прежде чем искать область определения или значения чего либо, нужно дать определение этому «чему либо»? В каком учебнике… Читать далее

Комментировать ответ…Комментировать…

Vladimir

Технологии

6,4 K

Компьютеры и автомобили. YouTube: https://www.youtube.com/c/Коленвальщик/ Яндекс.Дзен: h…  · 4 нояб 2018  · youtube.com/c/Коленвальщик/

Есть уравнение, например, y=x+5;

Область определения функции — это множество чисел Х, которые можно подставить в это уравнение.

Всевозможные значения Y называются областью значений функции.

Наш YouTube-канал

Перейти на youtube.com/c/Коленвальщик/

Илья

7 сентября 2019

Спасибо

Комментировать ответ…Комментировать…

Вы знаете ответ на этот вопрос?

Поделитесь своим опытом и знаниями

Войти и ответить на вопрос

Как найти область определения математических функций? / Мир знаний / Дети / Публикации / Медицинский справочник

Декартова система координат

х+4=0

  • Находим корень уравнения.
    х=-4
  • Определяем множество всех возможных значений аргумента.
    D(f)=(-∞ ; -4)∪(-4; +∞)
  • Ответ: областью определения функции являются все действительные числа, кроме -4.

    Значение числа под знаком квадратного корня не может быть отрицательным. В этом случае определения функции с корнем сводится к решению неравенства. Подкоренное выражение должно быть больше нуля.

    Область определения корня связана с четностью показателя корня. Если показатель делится на 2, то выражение имеет смысл только при его положительном значении. Нечетное число показателя указывает на допустимость любого значения подкоренного выражения: как положительного, так и отрицательного.

    Неравенство решают так же, как уравнение. Существует только одно различие. После перемножения обеих частей неравенства на отрицательное число следует поменять знак на противоположный.

    — AD —


    Если квадратный корень находится в знаменателе, то следует наложить дополнительное условие. Значение числа не должно равняться нулю. Неравенство переходит в разряд строгих неравенств.

    Пример решения логарифмической функции

    Логарифмическая форма имеет смысл при положительных числах. Таким образом, область определения логарифмической функции аналогична функции квадратного корня, за исключением нуля.

    Рассмотрим пример логарифмической зависимости: y=lоg(2x-6). Найти область определения.

    Решение:

    • 2x-6>0
    • 2x>6
    • х>6/2

    Ответ: (3; +∞).

    Областью определения y=sin x и y=cos x является множество всех действительных чисел. Для тангенса и котангенса существуют ограничения. Они связаны с делением на косинус либо синус угла.

    Тангенс угла определяют отношением синуса к косинусу. Укажем величины углов, при которых значение тангенса не существует. Функция у=tg x имеет смысл при всех значениях аргумента, кроме x=π/2+πn, n∈Z.

    Областью определения функции y=ctg x является все множество действительных чисел, исключая x=πn, n∈Z. При равенстве аргумента числу π или кратному π синус угла равен нулю. В этих точках (асимптотах) котангенс не может существовать.

    Первые задания на выявление области определения начинаются на уроках в 7 классе. При первом ознакомлении с этим разделом алгебры ученик должен четко усвоить тему.

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

    Автор: Медицинский Справочник
    Дата обновления: 2021-11-17 07:11:30
    Дата публикации: 2021-05-10 22:27:45
    Категория: Мир знаний

    Python Scope

    ❮ Предыдущая Далее ❯


    Переменная доступна только внутри области, в которой она находится созданный. Это называется Scope .


    Локальная область

    Переменная, созданная внутри функции, принадлежит к локальной области этой функции и может использоваться только внутри этой функции.

    Пример

    Переменная, созданная внутри функции, доступна внутри этой функции:

    def myfunc():
      x = 300
      print(x)

    myfunc()

    Попробуйте сами »

    Функция внутри функции

    Как показано в приведенном выше примере, переменная

    x недоступна вне функции, но она доступна для любой функции внутри функции:

    Пример

    Доступ к локальной переменной можно получить из функции внутри функции:

    def myfunc():
      x = 300
      def myinnerfunc():
        print(x)
    моя внутренняя функция()

    myfunc()

    Попробуйте сами »



    Global Scope

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

    Глобальные переменные доступны из любой области, глобальной и локальной.

    Пример

    Переменная, созданная вне функции, является глобальной и может использоваться любой:

    x = 300

    def myfunc():
    print(x)

    myfunc()

    print(x)

    Попробуйте сами »

    Именование переменных

    Если вы работаете с одним и тем же именем переменной внутри и вне функции, Python будет рассматривать их как два отдельные переменные, один доступен в глобальной области (вне функции) и один доступен в локальной области (внутри функции):

    Пример

    Функция напечатает локальное x и тогда код напечатает глобальное x :

    х = 300

    по умолчанию myfunc():
      x = 200
    print(x)

    myfunc()

    print(x)

    Попробуйте сами »


    Глобальное ключевое слово

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

    Ключевое слово global делает переменную глобальной.

    Пример

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

    def myfunc():
      global x
      x = 300

    myfunc()

    print(x)

    Попробуйте сами »

    Кроме того, используйте глобальное ключевое слово , если хотите внести изменения в глобальную переменную внутри функции.

    Пример

    Чтобы изменить значение глобальной переменной внутри функции, см. переменная с использованием глобального ключевого слова :

    x = 300

    def myfunc():
     глобальный x
      x = 200

    myfunc()

    print(x)

    Попробуйте сами »


    ❮ Предыдущая Далее ❯


    НОВИНКА

    Мы только что запустили
    Видео W3Schools

    Узнать

    ВЫБОР ЦВЕТА
    КОД ИГРЫ

    Играть в игру




    Top Tutorials
    Учебное пособие по HTML
    Учебное пособие по CSS
    Учебное пособие по JavaScript
    Учебное пособие
    Учебное пособие по SQL
    Учебное пособие по Python
    Учебное пособие по W3. CSS
    Учебное пособие по Bootstrap
    Учебное пособие по PHP
    Учебное пособие по Java
    Учебное пособие по C++
    Учебное пособие по jQuery

    Основные ссылки
    Справочник по HTML
    Справочник по CSS
    Справочник по JavaScript
    Справочник по SQL
    Справочник по Python
    Справочник по W3.CSS
    Справочник по Bootstrap
    Справочник по PHP
    Цвета HTML
    Справочник по Java
    Справочник по Angular
    Справочник по jQuery


    5 Top Examples Примеры HTML
    Примеры CSS
    Примеры JavaScript
    Примеры инструкций
    Примеры SQL
    Примеры Python
    Примеры W3.CSS
    Примеры Bootstrap
    Примеры PHP
    Примеры Java
    Примеры XML
    Примеры jQuery


    FORUM | О

    W3Schools оптимизирован для обучения и обучения. Примеры могут быть упрощены для улучшения чтения и обучения. Учебники, ссылки и примеры постоянно пересматриваются, чтобы избежать ошибок, но мы не можем гарантировать полную правильность всего содержания. Используя W3Schools, вы соглашаетесь прочитать и принять наши условия использования, куки-файлы и политика конфиденциальности.

    Copyright 1999-2022 Refsnes Data. Все права защищены.
    W3Schools работает на основе W3.CSS.

    об областях — PowerShell | Microsoft Learn

    • Статья
    • 17 минут на чтение

    Краткое описание

    Объясняет концепцию области действия в PowerShell и показывает, как устанавливать и изменять объем элементов.

    Подробное описание

    PowerShell защищает доступ к переменным, псевдонимам, функциям и PowerShell диски (PSDrives), ограничивая места, где они могут быть прочитаны и изменены. PowerShell использует правила области действия, чтобы гарантировать, что вы случайно не измените элемент, который не следует изменять.

    Ниже приведены основные правила области действия:

    • Области могут вкладываться друг в друга. Внешняя область называется родительской областью. Любой вложенный области являются дочерними областями этого родителя.

    • Элемент виден в той области, в которой он был создан, и в любом дочернем области действия, если только вы явно не сделаете его закрытым.

    • Вы можете объявлять переменные, псевдонимы, функции и диски PowerShell для область вне текущей области.

    • Элемент, созданный вами в рамках области, может быть изменен только в области в которой он был создан, если вы явно не укажете другую область.

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

    Области PowerShell

    PowerShell поддерживает следующие области:

    • Глобальная: область, действующая при запуске PowerShell или при создании новый сеанс или пространство выполнения. Переменные и функции, присутствующие при Запуски PowerShell были созданы в глобальной области, например автоматические переменные и переменные предпочтений. Переменные, псевдонимы и функции в ваши профили PowerShell также создаются в глобальной области. глобальный scope — это корневая родительская область в сеансе.

    • Локальный: Текущая область. Локальная область может быть глобальной или любой другой размах.

    • Сценарий: область, которая создается во время выполнения файла сценария. Только команды в скрипте запускается в области скрипта. Для команд в скрипте область действия скрипта — это локальная область.

    Родительская и дочерняя области

    Вы можете создать новую дочернюю область, вызвав сценарий или функцию. Вызов область является родительской областью. Вызываемый скрипт или функция является дочерней областью. Функции или сценарии, которые вы вызываете, могут вызывать другие функции, создавая иерархия дочерних областей, корневая область которых является глобальной областью.

    Если вы явно не сделаете элементы частными, элементы в родительской области доступны для дочерней области. Однако элементы, которые вы создаете и изменяете в дочерняя область не влияет на родительскую область, если вы явно не укажете область действия при создании элементов.

    Примечание

    Функции из модуля не выполняются в дочерней области вызывающей области. Модули имеют собственное состояние сеанса, связанное с глобальной областью. Весь код модуля выполняется в специфической для модуля иерархии областей видимости, которая имеет свои особенности. собственная корневая область.

    Наследование

    Дочерняя область не наследует переменные, псевдонимы и функции из родительская область. Если элемент не является частным, дочерняя область может просматривать элементы в родительская область. И он может изменить элементы, явно указав родительская область, но элементы не являются частью дочерней области.

    Однако создается дочерняя область с набором элементов. Как правило, он включает все псевдонимы с параметром AllScope . этот вариант обсуждается далее в этой статье. Он включает в себя все переменные, которые имеют AllScope опция, а также некоторые автоматические переменные.

    Чтобы найти элементы в определенной области, используйте параметр Scope в Get-Variable или Get-Alias ​​ .

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

     Get-Variable -Scope local
     

    Чтобы получить все переменные в глобальной области, введите:

     Get-Variable -Scope global
     

    Модификаторы области действия

    Имя переменной, псевдонима или функции может включать любой из следующих необязательные модификаторы прицела:

    • global: — указывает, что имя существует в области Global .

    • локальный: — указывает, что имя существует в области Local . Электрический ток область всегда является областью Local .

    • private: — указывает, что имя Private и видно только текущий объем.

      Примечание

      частный не является областью действия. Это вариант, который меняет видимость элемента за пределами области, в которой этот элемент определен.

    • сценарий: — указывает, что имя существует в области Script . Область сценария — ближайшая область действия файла сценария предка или Global , если нет ближайшего файла сценария предка.

    • использование: — Используется для доступа к переменным, определенным в другой области во время работы сценарии с помощью командлетов, таких как Start-Job и Invoke-Command .

    • рабочий процесс: — указывает, что имя существует в рабочем процессе. Примечание: Рабочие процессы не поддерживаются в PowerShell v6 и выше.

    • — модификатор, созданный поставщиком PowerShell PSDrive. Например:

      Пространство имен Описание
      Псевдоним: Псевдонимы, определенные в текущей области
      Конверт: Переменные среды, определенные в текущей области
      Функция: Функции, определенные в текущей области
      Переменная: Переменные, определенные в текущей области

    Областью действия сценариев по умолчанию является область действия сценария. Область по умолчанию для функции и псевдонимы являются локальной областью действия, даже если они определены в сценарий.

    Использование модификаторов области видимости

    Чтобы указать область действия новой переменной, псевдонима или функции, используйте область модификатор.

    Синтаксис модификатора области в переменной:

     $[<модификатор области>:]<имя> = <значение>
     

    Синтаксис модификатора области действия в функции:

     function [<модификатор-области>:]<имя> {<тело-функции>}
     

    Следующая команда, которая не использует модификатор области действия, создает переменную в текущей или локальной области :

     $а = "один"
     

    Чтобы создать ту же переменную в глобальной области , используйте глобальную область : модификатор:

     $global:a = "один"
    Get-переменная a | Список форматов *
     

    Обратите внимание на значения свойств Visibility и Options .

     Имя: а
    Описание :
    Стоимость: один
    Видимость: общедоступная
    Модуль:
    ИмяМодуля:
    Опции : Нет
    Атрибуты: {}
     

    Сравните это с частной переменной:

     $private:pVar = 'Частная переменная'
    Получить переменную pVar | Список форматов *
     

    Использование модификатора области действия private устанавливает для свойства Options значение Private .

     Наименование: pVar
    Описание :
    Значение: частная переменная
    Видимость: общедоступная
    Модуль:
    ИмяМодуля:
    Варианты: частный
    Атрибуты: {}
     

    Чтобы создать ту же переменную в области сценария , используйте область сценария : . модификатор:

     $script:a = "один"
     

    Вы также можете использовать модификатор области действия с функциями. Следующая функция определение создает функцию в области global :

     function global:Hello {
      Пишет-ведущий "Привет, мир"
    }
     

    Вы также можете использовать модификаторы области для ссылки на переменную в другой области. Следующая команда ссылается на переменную $test , сначала в локальной области а затем в глобальном масштабе:

     $test
    $ глобальный: тест
     

    Использование: модификатор прицела

    Использование — это специальный модификатор области, который идентифицирует локальную переменную в удаленном команда. Без модификатора PowerShell ожидает переменные в удаленных командах. для определения в удаленном сеансе.

    Модификатор области с использованием представлен в PowerShell 3.0.

    Для любого скрипта или команды, которая выполняется вне сеанса, вам потребуется Использование модификатор области для встраивания значений переменных из области вызывающего сеанса, чтобы код вне сеанса может получить к ним доступ. Использование модификатора области действия поддерживается в следующих контекстах:

    • Удаленно выполняемые команды, запущенные с помощью Invoke-Command с использованием ComputerName , HostName , SSHConnection или Session параметры (удаленный сеанс)
    • Фоновые задания, запущенные с помощью Start-Job (сеанс вне процесса)
    • Задания потоков, запущенные через Start-ThreadJob или ForEach-Object -Parallel (отдельный сеанс потока)

    В зависимости от контекста значения встроенных переменных могут быть независимыми копии данных в области действия вызывающего объекта или ссылки на него. В удаленных и внепроцессные сеансы, они всегда являются независимыми копиями.

    Дополнительные сведения см. в разделе about_Remote_Variables.

    В сеансах потоков они передаются по ссылке. Это означает, что можно изменить переменные области вызова в другом потоке. Безопасное изменение переменных требует синхронизации потоков.

    Для получения дополнительной информации см.:

    • Start-ThreadJob
    • ForEach-Object
    Сериализация значений переменных

    Удаленно выполняемые команды и фоновые задания выполняются вне процесса. Внепроцессные сеансы используют сериализацию и десериализацию на основе XML, чтобы сделать значения переменных, доступных через границы процесса. процесс сериализации преобразует объекты в PSObject , который содержит исходные свойства объектов, но не его методы.

    Для ограниченного набора типов десериализация возвращает объекты обратно в оригинальный тип. Регидратированный объект является копией исходного экземпляра объекта. Он имеет свойства и методы типа. Для простых типов, таких как System.Version , копия точная. Для сложных типов копия несовершенный. Например, повторно гидратированные объекты сертификата не включают закрытый ключ.

    Экземпляры всех других типов являются экземплярами PSObject . PSTypeNames содержит исходное имя типа с префиксом Deserialized , для например, Deserialized.System.Data.DataTable

    Параметр AllScope

    Переменные и псевдонимы имеют свойство Option , которое может принимать значение AllScope . Элементы, имеющие свойство AllScope , становятся частью любого дочернего элемента. области, которые вы создаете, хотя они не наследуются задним числом родительским масштабы.

    Предмет, который имеет Свойство AllScope отображается в дочерней области, и это часть этого объема. Изменения элемента в любой области действия влияют на все области, в которых определена переменная.

    Управление областью действия

    Несколько командлетов имеют параметр Scope , который позволяет получать или устанавливать (создавать и изменить) элементы в определенной области. Используйте следующую команду, чтобы найти все командлеты в сеансе с параметром Scope :

     Get-Help * -Parameter scope
     

    Чтобы найти переменные, видимые в определенной области, используйте область . параметр Get-Variable . К видимым переменным относятся глобальные переменные, переменные в родительской области и переменные в текущей области.

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

     Get-Variable-Scope local
     

    Чтобы создать переменную в определенной области, используйте модификатор области или Параметр Scope из Набор переменных . Следующая команда создает переменную в глобальной области:

     New-Variable -Scope global -Name a -Value "One"
     

    Вы также можете использовать параметр Scope для New-Alias ​​ , Set-Alias ​​ или Командлеты Get-Alias ​​ для указания области действия. Следующая команда создает псевдоним в глобальной области:

     New-Alias ​​-Scope global -Name np -Value Notepad.exe
     

    Чтобы получить функции в определенной области, используйте Командлет Get-Item при находятся в сфере. Командлет Get-Item не имеет параметра Scope .

    Примечание

    Для командлетов, которые используют параметр Scope , вы также можете обратиться к прицелы по номеру. Число описывает относительное положение одного прицела относительно еще один. Область 0 представляет текущую или локальную область. Область 1 указывает непосредственная родительская область. Область 2 указывает родителя родительской области, и так далее. Нумерованные области полезны, если вы создали много рекурсивных масштабы.

    Использование точечной нотации источника с областью действия

    Скрипты и функции соответствуют всем правилам области действия. Вы создаете их в конкретной области, и они влияют только на эту область, если вы не используете командлет параметр или модификатор области, чтобы изменить эту область.

    Но вы можете добавить сценарий или функцию в текущую область, используя точечный источник обозначение. Затем, когда сценарий запускается в текущей области, любые функции, псевдонимы и переменные, которые создает скрипт, доступны в текущем сфера.

    Чтобы добавить функцию в текущую область, введите точку (.) и пробел перед путь и имя функции в вызове функции.

    Например, чтобы запустить сценарий Sample.ps1 из каталога C:\Scripts в области сценария (по умолчанию для сценариев) используйте следующую команду:

     c:\scripts\sample.ps1
     

    Чтобы запустить сценарий Sample.ps1 в локальной области, используйте следующую команду:

     . c:\scripts.sample.ps1
     

    Когда вы используете оператор вызова (&) для запуска функции или сценария, это не добавлен в текущую область. В следующем примере используется оператор вызова:

     и c:\scripts.sample.ps1
     

    Подробнее об операторе вызова можно прочитать в about_operators.

    Любые псевдонимы, функции или переменные, созданные сценарием Sample. ps1, недоступно в текущей области.

    Ограничение без области действия

    Некоторые концепции PowerShell аналогичны области действия или взаимодействуют с областью действия. Эти концепции могут быть перепутаны с областью действия или поведением области действия.

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

    Сеансы

    Сеанс — это среда, в которой работает PowerShell. Когда вы создаете сеанс на удаленном компьютере PowerShell устанавливает постоянное соединение с удаленный компьютер. Постоянное соединение позволяет использовать сеанс для несколько связанных команд.

    Поскольку сеанс представляет собой замкнутую среду, он имеет собственную область действия, но сеанс не является дочерней областью сеанса, в котором он был создан. сеанс начинается со своей собственной глобальной областью. Эта сфера не зависит от глобальная область сеанса. Вы можете создавать дочерние области в сеансе. За Например, вы можете запустить сценарий для создания дочерней области в сеансе.

    Модули

    Вы можете использовать модуль PowerShell для совместного использования и доставки инструментов PowerShell. Модуль это модуль, который может содержать командлеты, скрипты, функции, переменные, псевдонимы и другие полезные предметы. Если явно не определено, элементы в модуле не доступны за пределами модуля. Таким образом, вы можете добавить модуль в свой сессии и использовать общедоступные элементы, не беспокоясь о том, что другие элементы могут переопределить командлеты, сценарии, функции и другие элементы вашего сеанса.

    По умолчанию модули загружаются на верхний уровень текущего сеанса . состояние не текущая область действия . Текущее состояние сеанса может быть модулем состояние сеанса или глобальное состояние сеанса. Добавление модуля в сеанс делает не менять масштаб. Если вы находитесь в глобальной области видимости, то загружаются модули в глобальное состояние сеанса. Все экспорты помещаются в глобальные таблицы. Если вы загружаете модуль2 из в модуль1, модуль2 загружается в сеанс состояние модуля1, а не глобальное состояние сеанса. Любой экспорт из модуля2 размещен в верхней части состояния сеанса module1. Если вы используете Import-Module -Scope local , затем экспорт помещается в текущий объект области, а не на верхнем уровне. Если вы в модуле и используете Import-Module -Scope global (или Import-Module -Global ) для загрузки другого модуль, этот модуль и его экспорт загружаются в глобальное состояние сеанса вместо локального состояния сеанса модуля. Эта функция была разработана для модуль записи, который манипулирует модулями. Модуль WindowsCompatibility делает это для импорта прокси-модулей в глобальное состояние сеанса.

    В состоянии сеанса модули имеют собственную область действия. Рассмотрим следующее модуль C:\temp\mod1.psm1 :

     $a = "Привет"
    функция фу {
        "$а = $а"
        "`$global:a = $global:a"
    }
     

    Теперь мы создаем глобальную переменную $a , присваиваем ей значение и вызываем функцию фу .

     $a = "До свидания"
    фу
     

    Модуль объявляет переменную $a в области модуля, затем функция foo выводит значение переменной в обеих областях.

     $a = Привет
    $global:a = До свидания
     

    Вложенные подсказки

    Вложенные подсказки не имеют собственной области действия. Когда вы входите во вложенный приглашение, вложенное приглашение является подмножеством среды. Но ты остаешься в пределах локального охвата.

    Сценарии имеют собственную область действия. Если вы отлаживаете скрипт и достигаете точки останова в скрипте, вы входите в область скрипта.

    Private Option

    Псевдонимы и переменные имеют свойство Option , которое может принимать значение Частный . Элементы, имеющие параметр Private , можно просматривать и изменять. в той области, в которой они созданы, но их нельзя просмотреть или изменить за пределами этой области.

    Например, если вы создаете переменную с частной опцией в глобальном область действия, а затем запустить сценарий, Get-Variable Команды в сценарии не отображать приватную переменную. Использование модификатора глобальной области видимости в этом случае не отображает приватную переменную.

    Вы можете использовать Опция параметр New-Variable , Set-Variable , Командлеты New-Alias ​​ и Set-Alias ​​ , чтобы задать для свойства Option значение Частный.

    Видимость

    Свойство Видимость переменной или псевдонима определяет, можете ли вы увидеть элемент вне контейнера, в котором он был создан. Контейнер может быть модулем, сценарием или оснасткой. Обзорность предназначена для контейнеров в так же, как Private Значение свойства Option предназначено для масштабы.

    Свойство Visibility принимает значения Public и Private . Предметы которые имеют частную видимость, можно просматривать и изменять только в контейнере в которым они были созданы. Если контейнер добавлен или импортирован, элементы, которые имеют частную видимость, не могут быть просмотрены или изменены.

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

    • Если вы создаете элемент, который имеет частную видимость в глобальной области, вы не может просматривать или изменять элемент в любой области.
    • Если вы попытаетесь просмотреть или изменить значение переменной с закрытым видимости, PowerShell возвращает сообщение об ошибке.

    Вы можете использовать командлеты New-Variable и Set-Variable для создания переменной который имеет частную видимость.

    Примеры

    Пример 1. Изменение значения переменной только в сценарии

    Следующая команда изменяет значение переменной $ConfirmPreference в скрипт. Изменение не влияет на глобальную область.

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

     PS> $ConfirmPreference
    Высокая
     

    Создайте сценарий Scope. ps1, содержащий следующие команды:

     $ConfirmPreference = "Low"
    "Значение `$ConfirmPreference равно $ConfirmPreference."
     

    Запустить скрипт. Сценарий изменяет значение $ConfirmPreference . переменная, а затем сообщает ее значение в области скрипта. Результат должен напоминают следующий вывод:

     Низкое значение $ConfirmPreference.
     

    Затем проверьте текущее значение переменной $ConfirmPreference в текущем сфера.

     PS> $ConfirmPreference
    Высокая
     

    В этом примере показано, что изменение значения переменной в области сценария не влияет на значение переменной в родительской области.

    Пример 2. Просмотр значения переменной в разных областях

    Вы можете использовать модификаторы области для просмотра значения переменной в локальной области и в родительской области.

    Сначала определите переменную $test в глобальной области.

     $test = "Глобальный"
     

    Затем создайте сценарий Sample. ps1, определяющий переменную $test . в скрипт, используйте модификатор области для ссылки на глобальную или локальную версию переменной $test .

    В Sample.ps1:

     $test = "Локальный"
    «Локальное значение `$test равно $test».
    «Глобальное значение `$test равно $global:test».
     

    При запуске Sample.ps1 вывод должен выглядеть следующим образом:

     Локальное значение $test — Local.
    Глобальное значение $test — Global.
     

    Когда сценарий завершен, только глобальное значение $test определяется в сессия.

     PS> $тест
    Глобальный
     

    Пример 3. Изменение значения переменной в родительской области

    Если вы не защитите элемент с помощью параметра «Частный доступ» или другого метода, вы может просматривать и изменять значение переменной в родительской области.

    Сначала определите переменную $test в глобальной области.

     $test = "Глобальный"
     

    Затем создайте сценарий Sample. ps1, определяющий переменную $test . в скрипт, используйте модификатор области для ссылки на глобальную или локальную версию переменной $test .

    В Sample.ps1:

     $global:test = "Локальный"
    «Глобальное значение `$test равно $global:test».
     

    После завершения сценария глобальное значение $test изменяется.

     PS> $тест
    Местный
     

    Пример 4. Создание частной переменной

    Частная переменная — это переменная, имеющая свойство Option , значение Частный . Частные переменные наследуются дочерней областью, но их можно просматривать или изменять только в той области, в которой они были созданы.

    Следующая команда создает частную переменную с именем $ptest в локальной сфера.

     New-Variable -Name ptest -Value 1 -Option Private
     

    Вы можете отображать и изменять значение $ptest в локальной области.

     PS> $ptest
    1
    PS> $ptest = 2
    PS> $ptest
    2
     

    Затем создайте сценарий Sample. ps1, содержащий следующие команды. Команда пытается отобразить и изменить значение $ptest .

    В Sample.ps1:

     "Значение `$Ptest равно $Ptest."
    "Значение `$Ptest равно $global:Ptest."
     

    Переменная $ptest не отображается в области сценария, вывод пустой.

     "Значение $Ptest равно ."
    "Значение $Ptest равно ."
     

    Пример 5: Использование локальной переменной в удаленной команде

    Для переменных в удаленной команде, созданной в локальном сеансе, используйте Использование модификатор области действия. PowerShell предполагает, что переменные в удаленных командах были созданный в удаленном сеансе.

    Синтаксис:

     $Использование:<ИмяПеременной>
     

    Например, следующие команды создают переменную $Cred в локальной сеанс, а затем используйте переменную $Cred в удаленной команде:

     $Cred = Get-Credential
    Invoke-Command $s {Remove-Item .\Test*.ps1 -Credential $Using:Cred}
     

    Область использования была представлена ​​в PowerShell 3.

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *