# Общие рекомендации и требования к использованию Python Python достаточно простой язык, с высокой степенью интерактивности, внесение изменений в программу производиться достаточно быстро, поэтому справедливым является требование от студента уметь исправить ошибки "здесь и сейчас". Python имеет встроенную систему документации, поэтому работа с ним вполне возможна в отсутствие интернета или других методических руководств. По требованию преподавателя студент должен предоставить код программы и исходные данные. Студент должен уметь объяснить, что делает тот или иной код или функция. Если используется функция для какой-либо вычислительной процедуры, то студент должен уметь объяснить, что это за процедура, какие она использует входные данные и что является результатом процедуры. Например, если студент использует интерполяцию данных с помощью кубических сплайнов, то он должен уметь объяснить, что такое интерполяция и что такое кубический сплайн, который он получил в результате. Использование компьютерных методов расширяет возможности по обработке данных лабораторных работ, поэтому допустимо сформулировать дополнительное задание к работе, позволяющее улучшить методику работы. Например, в лабораторной работе, посвященной компьютерной гамма-спектрометрии, используется специальная программа для нахождения точного положения пиков полного поглощения с помощью фитирования пика. В качестве дополнительного задания можно предложить студентам не использовать эту программу, а скачать данные и попытатся профитировать пики самостоятельно с помощью Python, пример задания можно посмотреть [здесь](). Так же использование компьютерных методов расширяют возможности для подготовки вопроса по выбору. Студент может: * дополнить свой ответ численным моделированием физического явления; * сделать наглядную визуализацию или демонстрацию; * улучшить точность лабораторной работы за счет более сложного анализа данных; * использовать Python для взаимодействия с вашим демонстрационным устройством. В зависимости от курса студентам могу быть предложены дополнительные задания с использованием следующих разделов: * Интерполяция и экстраполяция; * Решение оптимизационных задач, фитирование; * Фурье-анализ и обработка цифровых сигналов; * Продвинутая математическая статистика: использование критериев согласия и распределений отличных от нормального; * Численное решение задач сеточными методами и методами Монте-Карло. Студентам предлагается два варианта использования Python: в виде отдельных программ и в виде рабочих тетрадей [Jupyter Notebook](https://jupyter.org). В первом случае студент использует свои сценарии на Python для обработки данных и построения графиков и полученные результаты размещает в своем отчете, а сами сценарии служат приложением к отчету. Во-втором случае студент может поступать так же как и в первом случае, а может с разрешения преподавателя использовать Jupyter Notebook для оформления отчета в электронном виде. Рабочие тетради Jupyter Notebook могут содержать в себе код, уравнения, графики и текст, то есть позволяют оформить полноценный отчет, который имеет большую степень интерактивности и возможность быстро расширить свое содержание какими-то дополнительными вычислениями. Кроме того, на основе рабочий тетради может быть создана презентация, что может быть использовано, если преподаватель допускает такой формат сдачи работы. Больше о Jupyter Notebook в следующем разделе.