繁体   English   中英

Python:类型错误,但我不知道要更改什么! 对 Smtplib 了解很多的人的问题

[英]Python: Type Error, but I don't know what to change! Question for Someone who know many about Smtplib

我想做一个Email的作家。 我看到了一个教程,结果出来了:

import smtplib
import os

user = os.getenv("SMTP_USER")
pwd = os.getenv("SMTP_PWO")
mail_text = "Hallo, \n\ndas ist ein Test!\n\n"
subject = "Python Mail"

MAIL_FROM = "x.muelfellner@outlook.de"
RCPT_TO = input("Empfänger: ")
DATA = "From:%s\nTo:%s\nSubject:%s\n\n%" \
       (MAIL_FROM,RCPT_TO,subject,mail_text)
server = smtplib.SMTP("secure.emailsrvr.com:587")
server.starttls()
server.login(user,pwd)
server.sendmail(MAIL_FROM,RCPT_TO,DATA)
server.quit()

但是当我运行代码时出现错误。 这里:

Traceback (most recent call last):
  File "/home/pi/Bookshelf/Pyton/SendEmail.py", line 12, in <module>
    (MAIL_FROM,RCPT_TO,subject,mail_text)
TypeError: 'str' object is not callable

我不知道我要改变什么? 有人能帮我吗?

您的问题与 smtplib 无关; 这只是一个语法错误。

你无意中试图调用一个字符串(我删除了\延续):

DATA = "From:%s\nTo:%s\nSubject:%s\n\n%"(MAIL_FROM,RCPT_TO,subject,mail_text)

它应该是

DATA = "From:%s\nTo:%s\nSubject:%s\n\n%s" % (MAIL_FROM,RCPT_TO,subject,mail_text)

格式化一个字符串。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM