разделить функции между двумя файлами - PullRequest
0 голосов
/ 03 ноября 2019

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

Я пытался ввыполняется из файла1: из функции импорта из файла2, а затем в файл2 выполняется: из функции импорта из файла1. Однако это не работает. Я просто получаю ошибку импорта import1.

#file1 (backend)
from physicstester_frontend import answer

def quantum_test():

    while True:
        qq1 = "describe the experiments that lead to wave particle duality."
        print(qq1)
        answer()
        qq1_words = ["double slit", "diffraction", "interference", "wave", "photoelectric", "effect", "photon"]
        if all(word in ans for word in qq1_words):
            print("correct") #prints correct if all required words are in string
            break  
        else:
            print("not a full description, try again")
            continue

#file2 (frontend)
from physicstester_data import quantum_test

print("physics tester")
print("topics: \nQuantum\n..\n..\n..")
topics = input("which topic would you like to be tested on?: ")

if topics.lower() == "quantum":
    quantum_test()

def answer():
    global ans
    ans = input("answer: ")

когда я делаю это, я получаю

ImportError: cannot import name 'quantum_test' from 'physicstester_data'

1 Ответ

0 голосов
/ 03 ноября 2019

import циклы плохие.

Поместите def answer() в свой собственный файл, answer.py, чтобы разорвать цикл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...