将HTML BODY中的列表值与Boto3 / Amazon SES结合使用

我有以下问题。我使用boto3通过Amazon SES生成HMTL电子邮件。在这里我要使用占位符。我有一个列表,其中包含要在此占位符中放入的值,但我不知道如何执行此操作。每个占位符都有一个值,一切正常。

我的代码如下:

import boto3
SENDER = "xy@abc.com"
RECIPIENT = "rec@abc.com"
AWS_REGION = "yyy"
SUBJECT = "Title"
BODY_HTML = """<html>
           <head></head>
               <body>
               <h3>Header</h3>
               <p>Dear Sir,</p>
               <p>please give me your feedback to these products:</p>
               <p>Number: {Number},Text: {Text},Count: {Count}</p>
               <p>Best regards</p>
               <p>S.O</p>
               <p>Company</p>
               <p>S.O</p>
               <p>Street and City</p>
               <p>Phone</p>
               <p>Fax</p>
               <p>E-Mail: <a href="mailto:example@abc.com">Abcabc.com</a></p>
               <p>Web: <a href="www.stackoverflow.com">www.stackoverflow.com</a></p>
           </body>
           </html>
               """
for x in i:
    new_body = BODY_HTML.format(Number=x[3],Text=x[1],Count=x[2])

CHARSET = "UTF-8"
client = boto3.client('ses',aws_access_key_id="",aws_secret_access_key="",region_name=AWS_REGION)
try:
    response = client.send_email(
        Destination={
            'ToAddresses': [
                RECIPIENT,],},Message={
            'Body': {
                'Html': {
                    'Charset': CHARSET,'Data': new_body,'Subject': {
                'Charset': CHARSET,'Data': SUBJECT,}
        },Source=SENDER,)
except ClientError as z:
    print(z.response['Error']['Message'])
else:
    print("Email sent! Message ID:"),print(response['MessageId'])

我的列表如下:

i = [(120,'ABC',12,12345),(121,'BCD',13,253461),(122,'FFG',16,564895)]

当前输出如下:

**Header**
Dear Sir,please give me your feedback to these products:
Number: 564895,Text: FFG,Count: 16
Best regards
S.O
Company
S.O
Street and City
Phone
Fax
E-Mail: Abcabc.com
Web: www.stackoverflow.com

如何获取其他值?我想要这样的输出:

**Header**
Dear Sir,Count: 16
Number: 12345,Text: ABC,Count: 12 
Number: 123461,Text: BCD,Count: 13
Best regards
S.O
Company
S.O
Street and City
Phone
Fax
E-Mail: Abcabc.com
Web: www.stackoverflow.com
suleo123 回答:将HTML BODY中的列表值与Boto3 / Amazon SES结合使用

好吧,我明白了。我创建了一个辅助功能:

def helper(elements):
string = ""
for s in elements:
    a = ''.join(str(s[3]))
    b = ''.join(str(s[1]))
    c = ''.join(str(s[2]))
    string += "<p>"+"Number: "+a+",""Text: "+b+",""Count: "+c
    string += "</p>\n"
return string
本文链接:https://www.f2er.com/2968708.html

大家都在问