第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將項目添加到列表列表 - Python

將項目添加到列表列表 - Python

慕姐4208626 2023-07-18 13:33:53
我希望使用此處的代碼將域與其 DNS 解析器名稱相匹配當前 CSV 輸出domain1 dns1 dns2 dns3 \n domain2 dns1 dns2 dns3 \n etc這是不正確的格式,因為它將所有域和 DNS 解析器添加到同一行,而不是基于新域的新行。由于換行符,它們僅由空白單元格分隔。相反,我希望將其編寫如下,其中每個域及其 dns 解析器都寫入其自己的單獨行。預期的 CSV 輸出:domain1 dns1 dns2 dns3domain2 dns1 dns2 dns3domain3 dns1 dns2 dns3etc...我希望 CSV 文件以正確的格式寫出,并且使用我擁有的代碼,每次將域傳遞給 def dns_resolver 時,它都應該迭代到新的列表索引。這樣,每個域及其 dns 解析器都有自己的列表,因此在寫入新的 CSV 文件時,每個域?qū)⒋蛴≡?CSV 文件中自己的行中。該代碼未正確迭代列表索引,因此不會將域及其 dns 名稱添加到任何列表中。當它們?nèi)繉懭胪粋€列表時,它工作正常,但它們?nèi)繉懭胪恍?,這是不正確的。因此,我不會使用 1 個列表,而是使用一個列表列表,并將每個列表寫入自己的列表,然后將每個列表寫入 csv 文件,以便它們位于自己的行中。通常,域?qū)?csv 文件讀入列表,但為此,我輸入了 3 個值。import dns.resolver import csvimport osfrom os.path import dirname, abspathr = 0def dns_resolver(domain):    server = []    resolvers = []        try:        resolvers = dns.resolver.resolve(domain, 'NS')        #dns_list.append(domain)        for x in resolvers:            #dns_list.append(x.target)            #dns_list.append('\n')             server.append(str(x.target))    except:        server.append('did not resolve')    finally:        return (domain, *server)            # Read in all domains from csv file domains.csv & count how many domains there are listeddomain_list = ['google.com', 'facebook.com', 'github.com']domain_amount = 0with open(domainFName, 'r') as file:    for line in csv.reader(file):        name = (line)        domain_list.append(line)        domain_amount += 1for first_domain in domain_list:    for x in first_domain:        outputWriter.writerow(dns_resolver(x))
查看完整描述

1 回答

?
qq_笑_17

TA貢獻1818條經(jīng)驗 獲得超7個贊

您可以簡單地讓dns_resolver函數(shù)返回給定域的列表。

這*server是將每個項目附加到列表中的簡寫。

使用列表理解,將所有列表收集到列表列表中以寫入 CSV。

def dns_resolver(domain):

    # do your dns resolution

    # server = dns.resolver.resolve(domain, 'NS')

    server = ["dns1", "dns2", "dns3", "dns4"]

    return [domain, *server]

        


# Read in all domains

domain_list = ['google.com', 'facebook.com', 'github.com']


print([dns_resolver(d) for d in domain_list])

輸出:


[

   ['google.com', 'dns1', 'dns2', 'dns3', 'dns4'],

   ['facebook.com', 'dns1', 'dns2', 'dns3', 'dns4'],

   ['github.com', 'dns1', 'dns2', 'dns3', 'dns4']

]


查看完整回答
反對 回復 2023-07-18
  • 1 回答
  • 0 關注
  • 126 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號