Python: 在多行字符串中使用变量
Python: Use Variable in mulit-line string
我有两个变量:
subject = 'this is the subject'
body = 'this is the content'
为了使用 smtplib 通过电子邮件发送此消息,我将消息变量作为多行字符串。但是 .format() 方法不起作用。有人有解决这个问题的想法吗?
消息字符串:
message = """\
Subject: (variable subject)
(variable content)"""
为了简单起见,您可以使用 f 字符串:
message = f"""
Subject: {subject}
{body}"""
这里是format()
的正确使用方法:
message = """
subject = {}
{}
""".format(subject, body)
要使用格式,请将 {}
放在需要添加变量的位置,然后使用 sequential[= 声明 .format()
25=] 您希望将那些 {}
替换为
的变量列表
我不完全确定你指的是什么,但这是我最好的猜测:
message = 'Subject: {}\n\n{}'.format(subject,body)
@juanpa.arrivillaga
我的尝试:
message = """\
Subject: {.format(subject)}
Python test"""
试试这个:
>>> subject = 'this is the subject'
>>> body = 'this is the content'
>>> message = '''\
... Subject: {subject}
...
... {body}\
... '''.format(subject=subject, body=body)
>>> print(message)
Subject: this is the subject
this is the content
我有两个变量:
subject = 'this is the subject'
body = 'this is the content'
为了使用 smtplib 通过电子邮件发送此消息,我将消息变量作为多行字符串。但是 .format() 方法不起作用。有人有解决这个问题的想法吗?
消息字符串:
message = """\
Subject: (variable subject)
(variable content)"""
为了简单起见,您可以使用 f 字符串:
message = f"""
Subject: {subject}
{body}"""
这里是format()
的正确使用方法:
message = """
subject = {}
{}
""".format(subject, body)
要使用格式,请将 {}
放在需要添加变量的位置,然后使用 sequential[= 声明 .format()
25=] 您希望将那些 {}
替换为
我不完全确定你指的是什么,但这是我最好的猜测:
message = 'Subject: {}\n\n{}'.format(subject,body)
@juanpa.arrivillaga
我的尝试:
message = """\
Subject: {.format(subject)}
Python test"""
试试这个:
>>> subject = 'this is the subject'
>>> body = 'this is the content'
>>> message = '''\
... Subject: {subject}
...
... {body}\
... '''.format(subject=subject, body=body)
>>> print(message)
Subject: this is the subject
this is the content