Python:在不同文件之间切换变量和定义

时间:2019-09-18 16:26:38

标签: python

我正在为我的应用程序构建注册系统,最近我添加了发送邮件功能,即注册成功后,用户应该会收到一封电子邮件。因此,所有要点是我在变量方面遇到了问题。例如,我有一个包含注册,登录过程的主文件,要发送电子邮件,我创建了另一个模块email.py,因此问题在于在主python文件中注册后,用户名存储在数据库中,对于某些用户名我也将其另存为字符串的原因。导入电子邮件发送功能后,我要执行此操作,在发送电子邮件时,应显示“ Hello,Adam”。亚当只是一个例子。 这只是一个注册过程。我用来导入其他模块的命令是

from email import send_mail,但我无法处理主文件中其他模块中的变量。

这是来自python主模块的代码。

def Register_Username():
    while Registracija:
        Register_Username = input("Please create an username ")
        if Banned_IP_ADRESS == 'NOT-BANNED':
            for char in Register_Username:
                if len(Register_Username) < 3 or len(Register_Username) > 20 or char in '!@4*%>' or " " in Register_Username:
                    os.system('cls')
                    print("[Username] : Bad Formating.")
                    time.sleep(2)
                    os.system('cls')
                    continue
                else:
                    time.sleep(1)
                    return Register_Username
            else:
                print("Current IP {} is banned!".format(Banned_IP_ADRESS))
                time.sleep(5)
                break

!同样,从注册返回字符串之后,我使用-Registered_Account_Username = Register_Username(),以获取用户输入的字符串并将其发送到email.py。

这是email.py模块中的文件。

import smtplib
print(siuntimo_vardas)
def send_mail():
    server = smtplib.SMTP('smtp.gmail.com', 587)
    server.ehlo()
    server.starttls()
    server.ehlo()
    server.login('huj417z@gmail.com', 'sadagf')
    subject = 'Account {} has been created!'.format(Registered_Account_Username)
    body = 'Our tema is reviewing our '
    image = 'image123.jpg'
    attachmentas = open(image, 'rb')
    msg = f"Subject : {subject}\n\n{body} \n{attachmentas}"
    server.sendmail(
            'huj417z@gmail.com',
            'huj417z@gmail.com',
            msg
    )
    print("Email has been sent!")

    server.quit()

send_mail()

0 个答案:

没有答案