kopilkaurokov.ru - сайт для учителей

Создайте Ваш сайт учителя Курсы ПК и ППК Видеоуроки Олимпиады Вебинары для учителей

Реферат на тему :" ОПЕРАТОР ПРИСВАИВАНИЯ, ВВОД И ВЫВОД ДАННЫХ В СРЕДАХ PYTHON И LAZARUS"

Нажмите, чтобы узнать подробности

Реферат на тему :" ОПЕРАТОР ПРИСВАИВАНИЯ, ВВОД И ВЫВОД ДАННЫХ В СРЕДАХ PYTHON И LAZARUS"

Вы уже знаете о суперспособностях современного учителя?
Тратить минимум сил на подготовку и проведение уроков.
Быстро и объективно проверять знания учащихся.
Сделать изучение нового материала максимально понятным.
Избавить себя от подбора заданий и их проверки после уроков.
Наладить дисциплину на своих уроках.
Получить возможность работать творчески.

Просмотр содержимого документа
«Реферат на тему :" ОПЕРАТОР ПРИСВАИВАНИЯ, ВВОД И ВЫВОД ДАННЫХ В СРЕДАХ PYTHON И LAZARUS"»

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ

ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ

«МОРДОВСКИЙ ГОСУДАРСТВЕННЫЙ

ПЕДАГОГИЧЕСКИЙ УНИВЕРСИТЕТ ИМЕНИ М. Е. ЕВСЕВЬЕВА»




Факультет физико-математический


Кафедра физики, информационных технологий и методик обучения




РЕФЕРАТ



ОПЕРАТОР ПРИСВАИВАНИЯ, ВВОД И ВЫВОД ДАННЫХ В СРЕДАХ PYTHON И LAZARUS







Автор работы ________________________________________ Т. М. Левкина

Направления подготовки 44.03.05 Педагогическое образование

Профиль Физика. Информатика



Руководитель работы

доцент, канд. физ-мат наук_________________________ Т. В. Кормилицына





Оценка __________









Саранск 2022

Содержание

Введение 3

Оператор присваивания в среде Python 4

Ввод и вывод данных в среде Python 8

Функция print() 8

Функция input() 9

Оператор присваивания в среде Lazarus 10

Ввод и вывод данных в среде Lazarus 12

Ввод данных 12

Вывод данных 13

Вывод в окно сообщения ShowMessage 13

Вывод в поле вывода (Label) 13





Введение

Python — высокоуровневый язык программирования общего назначения с динамической строгой типизацией и автоматическим управлением памятью, ориентированный на повышение производительности разработчика, читаемости кода и его качества, а также на обеспечение переносимости написанных на нём программ. Язык является полностью объектно-ориентированным в том плане, что всё является объектами. Необычной особенностью языка является выделение блоков кода пробельными отступами. Синтаксис ядра языка минималистичен, за счёт чего на практике редко возникает необходимость обращаться к документации. Сам же язык известен как интерпретируемый и используется в том числе для написания скриптов. Недостатками языка являются зачастую более низкая скорость работы и более высокое потребление памяти написанных на нём программ по сравнению с аналогичным кодом, написанным на компилируемых языках, таких как C или C++.

Lazarus - бесплатная кроссплатформенная визуальная интегрированная среда разработки (IDE) для быстрой разработки приложений (RAD) с использованием компилятора Free Pascal. Его цель - предоставить простую в использовании среду разработки для программистов, работающих на языке Object Pascal, который максимально приближен к Delphi.

Разработчики программного обеспечения используют Lazarus для создания консольных приложений с собственным кодом и графическим пользовательским интерфейсом (GUI) для настольных компьютеров, а также для мобильных устройств, веб-приложений, веб-сервисов, визуальных компонентов и функциональных библиотек для ряда различных платформ, включая Mac, Linux и Windows.

Оператор присваивания в среде Python

Оператор присваивания имеет следующую форму: v=expr, где

  • v – имя переменной;

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

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

Имена (идентификаторы) (англ. names, identifiers) переменных языка Python (), так же как и во многих других языках программирования (Pascal, C, Java, JavaScript и др.) могут содержать только латинские буквы, цифры и знаки подчеркивания и начинаться или с буквы, или со знака подчеркивания. Отметим, что в качестве идентификаторов не следует использовать зарезервированные (ключевые) слова (англ. keywords) языка Python. Список ключевых слов можно получить, например, с помощью встроенной системы помощи. Имена в языке Python зависят от регистра и не имеют ограничений по числу символов.

При выполнении оператора присваивания интерпретатором осуществляются следующие действия:

  • вычисляется значение выражения, указанного справа от знака равенства, и определяется тип выражения;

  • полученное значение заносится в свободные ячейки памяти;

  • создается переменная, указанная слева от знака равенства, которая, являясь ссылкой на данные (объект), занесенные в память, получает значение и тип этих данных, например:

n=7

n

7

type (n)

.

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

del n

n

NameError: name 'n' is not defined

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

При присваивании переменной значения другой переменной создается еще одна ссылка на существующие данные:

s1= 'some value'

s2=s1

s2

'some value',

и при удалении первой ссылки вторая сохраняет свое значение:

del s1

s1

NameError: name 's1' is not defined

s2

'some value'.

Python допускает множественное присвоение:

s5=s4=s3=s2

s5

'some value'.

Числа и строки в языке Python являются неизменяемыми типами данных. Это означает следующее: для переменных указанных типов нельзя изменить значение данных, хранящихся в памяти, на которые они ссылаются. При присваивании переменной нового значения

n=7

id (n)

505894400

n=25

id (n)

505894688.

происходит следующее – прежнее значение не изменится (оно будет в последствии автоматически удалено системой сборки мусора), а новое значение будет занесено в новую область памяти и теперь на него будет указывать ссылка n, что подтверждает встроенная функция id(), которая показывает, что значение адреса переменной n стало другим. Т.е. происходит не изменение значения объекта, а создание нового объекта с новыми данными и адресом.

Оператор присваивания имеет несколько расширенных вариантов, приведенных в таблице.

Оператор

Пример использования

Эквивалентная форма

Соответствующий

метод

+=

x+=y

x=x+y

x.__iadd__(y)

-=

x-=y

x=x-y

x.__isub__(y)

*=

x*=y

x=x*y

x.__imul__(y)

/=

x/=y

x=x/y

x.__itruediv__(y)

//=

x//=y

x=x//y

x.__ifloordiv__(y)

%=

x%=y

x=x%y

x.__imod__(y)

**==

x**=y

x=x**y

x.__ipow__(y)

x

x=x

x.__ilshift__(y)

=

x=y

x=xy

x.__irshift__(y)

&=

x&=y

x=x&y

x.__iand__(y)

|=

x|=y

x=x|y

x.__ior__(y)

^=

x^=y

x=x^y

x.__ixor__(y)



В языке Python операторы обычно отделяются друг от друга символами перевода на новую строку, т.е. каждый оператор занимает одну строку программы. Мы этого до сих пор придерживались и будет поступать так в дальнейшем. Но синтаксисом языка также разрешается помещать несколько операторов на строке, разделяя их точкой с запятой:

z1=5; z2=3.7; z3=1.5e-1.

Также разрешается располагать оператор на нескольких строках, разделяя отдельные части оператора символами обратного слэша:

x=z1+ \

z2+ \

z3 \

x

8.85.

Ввод и вывод данных в среде Python Функция print()

Функция print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False) осуществляет вывод данных objects в потоковый файл. При этом:

  • все неименованные аргументы value, ... преобразуются в строки;

  • между ними вставляются строки-разделители, заданные именованым аргументом sep (по умолчанию – пробелы, т.е. sep=' ');

  • в конце вывода добавляется строка завершения, заданная именованым аргументом end, (по умолчанию – символ новой строки, т.е. end='\n');

  • файл вывода задается с помощью именованого аргумента file (по умолчанию file='sys.stdout'). Он должен иметь метод write(string);

  • необходимость буферизации обычно определяется файлом, но если именованый аргумент flush (введенный в версии Python 3.3), равен True, то принудительно выполняется потоковый режим (по умолчанию flush=False).

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

Пример вывода двух значений без использования ключевых слов sep и end:

x=25

y=2.5E-2

print ( 'x' ,x)

print ( 'y' ,y)

================================RESTART================================

x 25

y 0.025

и с их использованием:

x=25

y=2.5E-2

print ( 'x' ,x,sep= '=' ,end= ' ' )

print ( 'y' ,y,sep= '=' ,end= '' )

================================RESTART================================

x=25 y=0.025

Функция input()

Функция input([prompt]) – при наличии необязательного аргумента prompt выводит его в стандантный поток вывода (англ. standard output). Затем считывет данные из стандартного устройства ввода (англ. standard intput) и преобразует их в строки, убирая замыкающие символы новой строки (англ. trailing newline).

Отметим, что функция input() объединила в себе две функции, которые используются во второй версии языка Python – собственно функцию input() и функцию raw_input(), которая не поддерживается версиями 3.x языка Python.

В примере показан ввод двоичного целого числа и числа с плавающей точкой:

x= int ( input ( "Введите двоичное число " ),2)

y= float ( input ( "Введите число с плавающей точкой " ))

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

Оператор присваивания в среде Lazarus

Значения переменным присваиваются с помощью оператора присваивания

:=

То есть, двоеточие и знак "равно", следующий сразу за ним, без пробелов. Присвоение происходит справа-налево: вначале вычисляется значение, указанное ПОСЛЕ этого оператора, затем оно присваивается переменной, указанной ДО оператора присваивания. Например:

var

i: integer; //объявили переменную с типом integer - целое число

begin

i:= 3; //присвоили этой переменной значение 3

Значение, которое присвоено переменной, может быть и сложным, составным. Можно указать не просто значение, а целое выражение, причем использовать в нем предыдущее значение самой переменной! Пример:

var

i: integer;

begin

i:= 3;

i:= 2 * 5 + 36 * i; //сложное выражение

Тут объявили целочисленную переменную i. Этой переменной присвоили значение 3. Потом мы присвоили новое значение, которое сначала высчитывается компьютером из сложного выражения, а затем только присваивается переменной. Какое же значение теперь в i? Из уроков математики знаем, что сначала вычисляются такие операторы, как умножение и деление, а только потом - сложение и вычитание. То есть, сначала высчитывается 2 * 5 = 10 (для компьютера знак "*" - это умножение, если кто-то не знает). Затем вычисляется 36 * i, а i - это 3, делали это присваивание строчкой выше. Так что получаем 36 * 3 = 108. Затем складываем эти значения: 10 + 108 = 118. Именно столько и попадет, в конце концов, в переменную i.

Здесь у кого-то может возникнуть вопрос: а почему автор советовал давать переменным осмысленные имена, а сам назначил простое имя i? Вопрос справедливый, отвечу так. Это – не реальная программа со множеством подпрограмм и переменных, это простой пример с одной переменной, и мы в любом случае, не запутаемся. Кроме того, переменная была назначена не для какой-то конкретной цели, а лишь для демонстрации присваивания ей значения. Поэтому и имя у переменной простое.

В программе также присваивали переменной не просто значение, а составное выражение:

MyName:= 'Привет, ' + Edit1.Text + '!';

Здесь строку "Привет, " соединяли с тем, что хранилось в поле ввода Edit1, добавляли восклицательный знак, а результат уже присваивали переменной MyName. Обратите внимание, что после слов "Привет" мы вписали не просто запятую, а запятую с последующим пробелом. Если бы не указали этот пробел, то в результате текст сливался бы, а это не очень красиво:

Привет,Дмитрий!

Ввод и вывод данных в среде Lazarus Ввод данных

Функция InputBox() выводит на экран диалоговое окно, в котором можно ввести данные.

Аргументами этой функции являются три строки, а значением функции – строка введенная пользователем.

В общем виде строка программного кода с использованием функции InputBox выглядит так:

Переменная := InputBox(‘Заголовок’, ‘Подсказка’, ‘Значение по умолчанию’);

где:

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

Заголовок – текст заголовка окна;

Подсказка – текст поясняющего сообщения;

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

Например,

n := InputBox(‘Ввод числа’, ‘Введите число:’, ‘ ‘);

Если пользователь щелкнет по кнопке ОК, то значением функции станет строка, введенная пользователем в текстовое поле. Если пользователь щелкнет по кнопке Cancel, то значением функции станет строка «Значение по умолчанию».

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

В качестве примера возьмем задачу пересчета веса из фунтов в килограммы

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

funtStr:= InputBox(‘Фунты-килограммы’,’Введите вес в фунтах:’,’ ‘);

funtFloat:=StrToFloat(funtStr);

Вывод данных

Результат работы программы чаще всего выводят в окно сообщения ShowMessage или в поле вывода (компонент Label).

Вывод в окно сообщения ShowMessage

Для вывода результата используется процедура ShowMessage(). Она выводит на экран диалоговое окно с текстом и командной кнопкой OK.

Общий вид инструкции вызова процедуры ShowMessage:

ShowMessage(‘Сообщение’);

где Сообщение – текст, который будет выведен в окне.

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

ShowMessage(‘Вес в килограммах: ‘+ FloatToStr(kg));

Вывод в поле вывода (Label)

Компонент TLabel(Поле вывода), в который будет осуществляться вывод, устанавливают на форме во время разработки. Содержание этого поля определяется значением свойства Caption.

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

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

Label1.Caption:=FloatToStr(kg) + ‘кг‘;


Получите в подарок сайт учителя

Предмет: Информатика

Категория: Прочее

Целевая аудитория: 10 класс.
Урок соответствует ФГОС

Скачать
Реферат на тему :" ОПЕРАТОР ПРИСВАИВАНИЯ, ВВОД И ВЫВОД ДАННЫХ В СРЕДАХ PYTHON И LAZARUS"

Автор: Левкина Татьяна Михайловна

Дата: 16.10.2022

Номер свидетельства: 615048

Похожие файлы

object(ArrayObject)#851 (1) {
  ["storage":"ArrayObject":private] => array(6) {
    ["title"] => string(145) "Реферат на тему :" ОПЕРАТОР ПРИСВАИВАНИЯ, ВВОД И ВЫВОД ДАННЫХ В СРЕДАХ PYTHON И LAZARUS""
    ["seo_title"] => string(80) "referat_na_temu_operator_prisvaivaniia_vvod_i_vyvod_dannykh_v_sredakh_python_i_1"
    ["file_id"] => string(6) "615050"
    ["category_seo"] => string(11) "informatika"
    ["subcategory_seo"] => string(7) "prochee"
    ["date"] => string(10) "1665869115"
  }
}


Получите в подарок сайт учителя

Видеоуроки для учителей

Курсы для учителей

ПОЛУЧИТЕ СВИДЕТЕЛЬСТВО МГНОВЕННО

Добавить свою работу

* Свидетельство о публикации выдается БЕСПЛАТНО, СРАЗУ же после добавления Вами Вашей работы на сайт

Удобный поиск материалов для учителей

Ваш личный кабинет
Проверка свидетельства