Вопрос или проблема
Я делаю витрину всех моих программ на Python из разных файлов, и не хочу переносить весь код в главный файл.
Я пробовал импортировать функцию из файла в Visual Studio Code, но когда я её вызывал, то получал это:
0 для остановки
1 для настроек
2 для калькулятора
3 для игры с числами
4 для детектора палиндромов
5 для переводчика на свинский язык
6 для создания анаграмм
7 для нахождения среднего
8 для калькулятора температуры
9 для калькулятора площади
что вы хотите: 1
➜ showcase-projects git:(main)
Потом я попробовал просто импортировать сам файл без функции и получил тот же результат.
Пример части моего кода в главном файле:
from addition import add
addition()
Для сумматора код:
def addition():
input("какое первое слагаемое: ")
input("какое второе слагаемое: ")
print(a+b)
Ответ или решение
Проблема, с которой вы столкнулись, заключается в том, что вызов функции addition()
в вашем основном файле не работает должным образом. Давайте разберем несколько возможных причин и предложим решения.
Проблемы в исходном коде:
-
Импорт функции:
У вас в коде написано:from addition import add addition()
Однако вы импортируете функцию
add
, но пытаетесь вызвать функциюaddition()
, которая не была импортирована. Это может вызвать ошибкуNameError
. Вам нужно изменить импорт на:from addition import addition
-
Определение функции:
Ваша функцияaddition()
принимает ввод пользователя, но не сохраняет эти значения, что приведет к ошибке, когда вы попытаетесь вывести результат сложения. Код функции должен выглядеть так:def addition(): a = float(input("Что вы хотите добавить (первое число): ")) b = float(input("Что вы хотите добавить (второе число): ")) print(a + b)
Обратите внимание на присвоение входящих значений переменным
a
иb
. -
Использование модуля:
Убедитесь, что файл, из которого вы импортируете функцию (например,addition.py
), находится в той же директории, что и ваш основной файл.
Пример работы:
Ваш основной файл может выглядеть следующим образом:
from addition import addition
# Вызов функции
addition()
А файл addition.py
должен содержать:
def addition():
a = float(input("Что вы хотите добавить (первое число): "))
b = float(input("Что вы хотите добавить (второе число): "))
print(a + b)
Дополнительные советы:
- Убедитесь, что вы сохранили все изменения в файлах перед запуском программы.
- Если вы все еще видите нежелательные результаты, попробуйте запустить код из командной строки, чтобы убедиться, что проблема не связана с конфигурацией вашей средой разработки (например, Visual Studio Code).
-
Если у вас несколько функций в файле
addition.py
, вы можете импортировать их все, используя:from addition import *
Это позволит вам использовать все функции из этого файла без необходимости импортировать каждую по отдельности.
Следуя этим рекомендациям, вы сможете успешно импортировать и использовать свои функции в основном файле.