如何将两个字符串变量组合成一个多行变量?

Posted

技术标签:

【中文标题】如何将两个字符串变量组合成一个多行变量?【英文标题】:How to combine two string variables into one multiline variable? 【发布时间】:2018-03-03 13:46:21 【问题描述】:

我想使用 python 发送一封包含两行(行)文本的电子邮件

a    b    c    d
e    f    g    h

我尝试使用xxx.attach(),但我发现第二行替换了第一行。

part1 = MIMEText(text1, 'plain')
part2 = MIMEText(text2, 'plain')
msg.attach(part1)
msg.attach(part2)

所以,我尝试将每一行定义为一个字符串变量,然后将它们组合在一起。最后,我只附加一个变量。

A="a   b   c   d"
B="e   f   g   h"

如何结合A和B得到如上的结果?

PS。我在 Windows10 上使用 Python3.6

【问题讨论】:

list(msg.walk()) 是否显示两个附件? 【参考方案1】:

为此使用 os 模块

import os
A = "a   b   c   d"
B = "e   f   g   h"
temp = os.linesep.join([A,B])

【讨论】:

【参考方案2】:

由于您使用的是 Windows,它具有与 Linux/Unix 不同的行分隔符,您可以使用 join + 操作系统的本机行分隔符。

import os
A = "a   b   c   d"
B = "e   f   g   h"
C = os.linesep.join([A,B])

MIMEText 可能会有所不同,尤其是当您使用除 text/plain 以外的任何编码时。 Try this post 如果您的电子邮件是 html 而不是纯文本。

【讨论】:

以上是关于如何将两个字符串变量组合成一个多行变量?的主要内容,如果未能解决你的问题,请参考以下文章

如何让PHP程序把字符串组合成变量名?

单独的日期字符串和时间字符串组合成一个解析日期时间戳

我如何将两个字符组合成一个字符串c#[重复]

如何将多行语句字符串放入变量中? [复制]

如何将两个每个 8 位的数组(二进制数字字符串组合成一个 16 位的单个字符串?(arduino,移位寄存器)

php当中,如何将数组合并成变量呢?