簡體   English   中英

多行字符串中的Python列表變量替換…幾乎(已編輯)

[英]Python list variable substitution within multiline string…almost(edited)

(編輯,下面的上一個WAAAY)-我通過在for循環內移動字符串subst使它起作用,但是結果自動將5個制表符放到了我似乎無法擺脫的左邊

我想把它留一點,看是否有人有答案,也許可以幫助跟隨我的人...

碼:

for i in dns_list:
    with open("output.txt", "a") as output:
        alert_dns = textwrap.dedent("""
                    { 
                       \"tests\":[  
                           {{  
                             \"token\":\"DNS\",
                             \"type\":\"text\",
                             \"operator\":\"contains\",
                             \"preservecase\":false,
                             \"value\":\"%s\"
                          }
                       ]
                    """)%(i)
        alert_dns=alert_dns.strip()
        output.write(alert_dns.strip())

(上一個)我有一個域名列表,我需要遍歷列表(dns_list)並將變量“插入”放入多行字符串(alert_dns)-

alert_dns="""
{{  
 \"tests\":[  
     {{  
       \"token\":\"DNS\",
       \"type\":\"text\",
       \"operator\":\"contains\",
       \"preservecase\":false,
       \"value\":\"{insert}\"
    }}
 ]
}}
"""

dns_list=[]
temp_file_name = 'daily.csv'
with open(temp_file_name, 'r') as temp_file:
    lines = temp_file.read()
    dns = re.findall(urlmarker.WEB_URL_REGEX,lines)
    for i in dns:
        dns_list.append(i)

with open("output.txt", "w") as output:
    for i in dns_list:
        for insert in alert_dns:
            # i=insert
            alert_dns.format(i)
            output.write(alert_dns+'\n')

我不斷收到-alert_dns.format(i)KeyError:'插入'

代替alert_dns.format(i)

你應該

alert_dns.format(insert=i)

好吧,這是任何人尋找的答案...

with open("output.txt", "w") as output:
    for i in dns_list:
        alert_dns = textwrap.dedent("""\
                    { 
                       \"tests\":[  
                           {{  
                             \"token\":\"DNS\",
                             \"type\":\"text\",
                             \"operator\":\"contains\",
                             \"preservecase\":false,
                             \"value\":\"%s\"
                          }
                       ]
                    """)%(i)
        output.write(alert_dns+'\n')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM