Переменные
В Python переменная появляется в момент присваивания: достаточно записать a = 5, и имя a сразу связывается со значением. У этого подхода есть обратная сторона. Тип определяется во время выполнения программы, и одна и та же переменная в разные моменты времени может хранить число, строку или список. Если в имени переменной окажется опечатка или будет передано значение не того типа, программа не сообщит об этом заранее — ошибка проявит себя только в момент работы, нередко уже у пользователя.
В языке «1С:Элемент» тип каждой переменной известен заранее. Поэтому переменную принято объявлять явно — указывать специальный модификатор и при необходимости тип. Это позволяет обнаружить ошибки несоответствия типов на этапе компиляции, а не во время работы программы. Такой подход называют статической типизацией.
В яз ыке «1С:Элемент» существует несколько видов переменных в зависимости от их назначения. Обычные переменные объявляются внутри тела метода, а константы — на уровне скрипта, вне какого-либо метода. У каждой переменной есть модификатор, который указывается перед именем и определяет, можно ли ее изменять:
- Модификатор
пер— переменная, доступная для записи и чтения. - Модификатор
знч— переменная, доступная только для чтения: ее значение нельзя перезаписать в дальнейшем коде. Объявляйте переменную с помощью данного модификатора, если ее значение не должно меняться. - Модификатор
исп— переменная, содержащая используемый ресурс (например, открытый файл), который должен быть автоматически закрыт при выходе из области видимости. При этом у переменной вызывается методЗакрыть().
Константу можно объявить с помощью модификатора конст. Значение константы нельзя изменить.
Тип переменной в языке «1С:Элемент» обычно определяется автоматически — по значению, которое присваивается ей при объявлении. Указывать тип явно через двоеточие иногда требуется и при наличии начального значения — например, когда нужно, чтобы переменная могла хранить значения более общего типа, чем тот, что выводится автоматически.
В Python переменная может в любой момент хранить значение любого типа. В языке «1С:Элемент» тип фиксируется при объявлении. Если требуется, чтобы переменная могла принимать значения нескольких типов, используют составной тип — типы перечисляют через вертикальную черту (например, Число|Строка). При объявлении переменной составного типа нужно либо явно задать начальное значение, либо включить в состав типов Неопределено. Тип Неопределено в списке типов явно не указывается, вместо него используют сокращение ?.
PI = 3.14
def define_variables():
a: int
a = 5
b = 10
c = None
c = "Привет"
c = 100
конст ПИ = 3.14
метод ОпределитьПеременные()
пер А: Число
А = 5
знч Б = 10 // Нельзя изменить
пер С: Число|Строка|? // Начальное значение — Неопределено
С = "Привет"
С = 100
;