簡體   English   中英

“if”語句從 csv 中查找剩余數字和 append 到列表中

[英]“if” statement to find remaining numbers and append into list from csv

我試圖弄清楚如何編寫關於如何從兩個列表中查找和 append 剩余數字的邏輯。

我有一個 CSV 數據格式如下

jeffrey,192.168.1.1,example1.com,30220,internet serverice provider 1
mike,192.168.1.2,example2.com,30220,internet service provider 1
frank,192.168.1.3,example3.com,30220,internet service provider 1
lucy,192.168.1.4,example4.com,14619,internet service provider 2
louisa,192.168.1.5,example5.com,14619,internet service provider 2
emily,192.168.1.6,example6.com,3357,internet service provider 3 
john,192.168.1.7,example7.com,210,internet service provider 4

我的清單如下

list_1 = ['3357', '210'] 
list_2 = ['14619'] 
list_3 = [] # List I want that remaining numbers to be in 

我假設使用 if 語句是 go 關於它的正確方法。

就像是

import csv

document = file.csv

with open ('test_file', 'w') as output:
        with document as file:
            output_data = csv.writer(output, delimiter = ',')
            reader = csv.reader(file)
            list_1 = ['3357', '210'] 
            list_2 = ['14619'] 
            list_3 = [] # List I want that remaining numbers to be in for row in reader:
               if row[3] not in list_1 and list_2:
                  list_3.append(row[3])
                  print(list_3)

我上面的代碼沒有得到我想要的結果

30220

任何幫助是極大的贊賞。

如果您對pandas Dataframe ,您可以通過以下方式進行

import pandas as pd
df = pd.read_csv('sample.csv', header=None)
list_1 = [3357, 210] 
list_2 = [14619] 
list(set(df[3].tolist()) - set(list_1 + list_2))

output 是[30220]

暫無
暫無

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

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