我使用pylint
格式化Python代码并获取一些不需要的警告消息,如下所示。
C:204, 0: Invalid function name "sendPasswordViaEmail" (invalid-name)
C:207, 4: Invalid variable name "to" (invalid-name)
W:213, 4: Statement seems to have no effect (pointless-statement)
我正在解释与以下信息相关的代码。
if request.method == 'POST':
name = request.POST.get('uname')
email = request.POST.get('uemail')
range_start = 10 ** (4 - 1)
range_end = (10 ** 4) - 1
password = randint(range_start, range_end)
passw = User(
uname=name,
password=password,
raw_password=password,
)
passw.save()
sendPasswordViaEmail(str(password), email)
return render(request, 'bookingservice/login.html')
def sendPasswordViaEmail(password, email):
""" Send email to user"""
to = email
gmail_user = settings.EMAIL
gmail_pwd = settings.PASSWORD
smtpserver = smtplib.SMTP("smtp.gmail.com", 587)
smtpserver.ehlo()
smtpserver.starttls()
smtpserver.ehlo
smtpserver.login(gmail_user, gmail_pwd)
header = 'To:' + to + '\n' + 'From: ' + \
gmail_user + '\n' + 'Subject:password \n'
msg = header + '\n Your password is\n\n' + password
smtpserver.sendmail(gmail_user, to, msg)
smtpserver.close()
答案 0 :(得分:11)
这些消息是警告(您的代码有效),而不是错误。
sendPasswordViaEmail
是一个驼峰案例名称。功能应该是“蛇案”。将其重命名为send_password_via_email
。
to
太短了。尝试使用recipient
或其他有意义的内容。
包含smtpserver.ehlo
括号括号的行什么都不做,因此没用。