在 Python 中将变量从一种方法调用到另一种方法

Calling variables from one method to another in Python

所以这是我在初学者教程之外进行的第一个项目。到目前为止,我制作了两个模块,其中一个根据用户输入创建 URL。它将一堆东西连接在一起,并使用用户输入来保存诸如日期和时间之类的东西以形成整个 URL,我已经测试过它并且工作正常。

我还创建了一个小型 GUI,它接受两段输入并将它们显示在一个文本框中,这也工作正常。

我的 GUI 中有一个功能可以记录文本输入框中的文本。我想要的是将输入的文本用作我在另一个模块内的用户输入。我是否需要 return 每个文本条目作为一个单独的调用?或者我可以保留这两个框,但在每次函数调用发生时访问保存的变量吗?

def click():
    entered_text = textEntry.get()
    entered_text2 = textEntry2.get()
    output.delete(0.0,END)
    output.insert(END, entered_text +'\n'+ entered_text2)
    # This is the end of this function with no return

这是我想用来构成 URL

的一部分的部分
def create_MY_URL():
    startDate = input("Enter intraday start date dd/mm/yyyy: ")
    startTime = input("Enter start time hh:mm: ")
    finishDate = input("Enter intraday finish date dd/mm/yyyy: ")
    finishTime = input("Enter finish time hh:mm: ")
    #there is plenty more of this function, it is returned at the end

那么我是否需要为每条信息调用两次 click() 以便将其用作 "startDate" 和 "FinishDate"?

这就是导入可以帮助您的地方,假设您有两个名为 gui.py 和 create_url.py 的 .py 文件,您可以将 create_url.py 中的功能导入到 gui.py

create_url.py

def create_MY_URL(start_date, end_date):  # accept the variables as input
    startDate = start_date  # assign the variables rather than accept an input
    startTime = input("Enter start time hh:mm: ")
    finishDate = end_date
    finishTime = input("Enter finish time hh:mm: ")
    #there is plenty more of this function, it is returned at the end

使用 gui.py 你将导入 create_url 然后你可以调用你已经内置到 create_url.py

中的函数
import create_url  # name of .py file

def click():
    entered_text = textEntry.get()
    entered_text2 = textEntry2.get()
    output.delete(0.0,END)
    output.insert(END, entered_text +'\n'+ entered_text2)

    create_MY_URL(entered_text, entered_text2)  # call your function and pass your two inputs
    # create_MY_URL will do stuff here

在此示例中,两个 .py 文件存在于同一目录中