这是我的代码
message = "From: %s\r\n" % fromaddr
+ "To: %s\r\n" % toaddrs
+ "CC: %s\r\n" % ",".join(cc)
+ "Subject: %s\r\n" % message_subject
+ "\r\n"
+ msg
我收到这个错误:
+ "To: %s\r\n" % toaddrs
TypeError: bad operand type for unary +: 'str'
请你帮忙
最佳答案
要解决您的问题,请将 message 的整个表达式括在括号中:
message = (
"From: %s\r\n" % fromaddr
+ "To: %s\r\n" % toaddrs
+ "CC: %s\r\n" % ",".join(cc)
+ "Subject: %s\r\n" % message_subject
+ "\r\n"
+ msg
)
python 给出的错误信息很有帮助。一元运算是那些只有一个参数的运算。 + 可以在 python 中用作一元运算,
x = + 2
是有效代码。您的代码段中发生的是第一行:
message = "From: %s\r\n" % fromaddr
被解释为完整的赋值语句。下一行开始一个新语句,但不完整。
关于 python 2.7类型错误: bad operand type for unary +: 'str' ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29880136/