Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/15: Рейтинг темы: голосов - 15, средняя оценка - 4.73
14 / 4 / 0
Регистрация: 07.10.2019
Сообщений: 245

Выделить в подпрограмму и обособить в отдельном модуле

31.01.2020, 16:29. Показов 3139. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
По программе:
Python
1
2
3
4
5
6
7
8
9
10
import math
 
numbers = [1, 2, 4, 8, 16]
 
 
def func(x: int) -> float:
    return math.exp(math.sin(x)) if x > 3 else 0
 
dict_new = {x: func(x) for x in numbers}
print (dict_new)
Вычисление значения функции для отдельного аргумента нужно выделить в подпрограмму и обособить в отдельном модуле. На вход вы подаете список аргументов, подпрограмма возвращает список значений функции (словарь создавать не нужно).
Подскажите пожалуйста как выделить подпрограмму и "обособить" модуль? Не совсем понимаю что вообще нужно сделать
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
31.01.2020, 16:29
Ответы с готовыми решениями:

ISR в отдельном модуле
Как из main-программы перенести ISR в другой модуль (библиотеку)? AVR-GCC. Пока приходится костылем: в модуле void isr_foo(void) { ... } ...

Макрос не работает в отдельном модуле
Как запустить макрос из модуля (search), а не из модуля (UserForm1) (я хотел бы вызвать этот макрос из модуля search. Это возможно?)

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

4
 Аватар для Semen-Semenich
5237 / 3481 / 1176
Регистрация: 21.03.2016
Сообщений: 8,307
31.01.2020, 16:51
Лучший ответ Сообщение было отмечено Jushara как решение

Решение

main.py
Python
1
2
3
4
5
6
7
8
9
10
11
import math
 
 
def func(x: int) -> float:
    return math.exp(math.sin(x)) if x > 3 else 0
 
if __name__ == '__main__':
    
    numbers = [1, 2, 4, 8, 16]
    dict_new = {x: func(x) for x in numbers}
    print (dict_new)

file.py

Python
1
2
3
4
5
from main import func
 
numbers = [1, 2, 4, 8, 16]
dict_new = {x: func(x) for x in numbers}
print (dict_new)
или
Python
1
2
3
4
5
import main
 
numbers = [1, 2, 4, 8, 16]
dict_new = {x: main.func(x) for x in numbers}
print (dict_new)
1
14 / 4 / 0
Регистрация: 07.10.2019
Сообщений: 245
31.01.2020, 17:13  [ТС]
Цитата Сообщение от Semen-Semenich Посмотреть сообщение
main.py
Этот файл должен находиться рядом с file.py? Или нужно кидать в директорию с модулями?
0
 Аватар для Semen-Semenich
5237 / 3481 / 1176
Регистрация: 21.03.2016
Сообщений: 8,307
31.01.2020, 17:18
и рядом и в директории с модулями может быть. попробуйте проверить и увидите результат
1
14 / 4 / 0
Регистрация: 07.10.2019
Сообщений: 245
31.01.2020, 18:09  [ТС]
Если из main.py вырезать список аргументов, как его прилепить что бы в file.py все работало корректно?

Добавлено через 28 секунд
Что бы выполнялось условие: На вход вы подаете список аргументов, подпрограмма возвращает список значений функции

Добавлено через 10 минут
Разобрался
Python
1
2
3
4
5
from main import func
 
numbers = [2, 4, 8, 16]
dict_new = {x: func(x) for x in numbers}
print(dict_new)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
31.01.2020, 18:09
Помогаю со студенческими работами здесь

Описать заданный класс в отдельном модуле
Очень прошу помочь, я совсем не шарю за джаву нужно сделать задание: Описать заданный класс в отдельном модуле. Все поля класса –...

Функция в отдельном модуле и динамический массив
Добрый день. Нужна помощь с задачей: Программа должна считать сумму элементов динамического массива, стоящих на нечетных местах. ...

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

Описать подпрограмму в модуле
Написать подпрограмму табулирования функции в модуле для ABC Pascal

Оформить в виде макроса и разместить их в отдельном модуле
В одномерном массиве, состоящем из n вещественных элементов, вычислить: 1) обнулить все отрицательные элементы массива расположенные...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Программный отбор элементов справочника Номенклатура по группе 1С
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор под наименованию группы (на. . .
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
Программный отбор элементов справочника Сотрудники по перечислениям 1С
Maks 21.03.2026
Установка программного отбора элементов справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит предопределенное значение перечислений. Процедура. . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru