2013-12-25 4 views
8

Я пишу программу для отправки электронной почты через python. У меня есть разные def, которые содержат переменные, которые содержат имя пользователя электронной почты и пароль по электронной почте и т. Д. Затем у меня есть другой вопрос, который фактически отправляет электронное письмо, но ему нужна переменная, содержащая имя пользователя и пароль электронной почты и т. Д. Как я могу позвонить переменные из разных def? Извините за странную формулировку. Я не знаю, как еще это сказать: P Спасибо!Вызов переменной из одной функции в другую функцию в Python

def get_email_address(): 
    #the code to open up a window that gets the email address 
    Email = input 
def get_email_username(): 
    #the code to open up a window that gets email username 
    Email_Username = input 

    #same for the email recipient and email password 

def send_email(): 
    #here I need to pull all the variables from the other def's 
    #code to send email 

ответ

9

Вам нужно будет возвращать значения в ваших вспомогательных функциях и вызывать эти функции из главной send_email() функции, назначение возвращаемых значений переменных. Что-то вроде этого:

def get_email_address(): 
    #the code to open up a window that gets the email address 
    Email = input 
    return Email 

def get_email_username(): 
    #the code to open up a window that gets email username 
    Email_Username = input 
    return Email_Username 

#same for the email recipient and email password 

def send_email(): 
    # variables from the other def's 
    email_address = get_email_address() 
    email_username = get_email_username() 

    #code to send email 
+0

Большое вам спасибо! У меня есть еще один вопрос. У меня есть def внутри def. Как мне получить доступ к этому. Если я использую get_email_address(), он откроет окно с запросом на мой адрес электронной почты, но я уже ввел его, поэтому я сделал чек, содержащий только возвращаемый Email. но теперь это дает мне определение внутри def, так как я могу получить к нему доступ? Спасибо за вашу помощь! – Micma418

+0

Извините, я не уверен, что вы имеете в виду, но я бы предположил, что, возможно, не использовал вложенные функции. –

Смежные вопросы