Python 如果匹配,则跳过将值写入Csv
我正在尝试将列表中的一些字符串写入csv文件。我正在单步遍历列表,并将其写入csv文件,但当我在两个列表中找到匹配项时,我不想将列表中的值写入csv文件。如果列表的值与单独列表中的另一个值匹配,是否有人可以帮助我跳过将该值写入csv的语法?如果你想知道我的语法哪里出错了,下面是我的代码Python 如果匹配,则跳过将值写入Csv,python,csv,Python,Csv,我正在尝试将列表中的一些字符串写入csv文件。我正在单步遍历列表,并将其写入csv文件,但当我在两个列表中找到匹配项时,我不想将列表中的值写入csv文件。如果列表的值与单独列表中的另一个值匹配,是否有人可以帮助我跳过将该值写入csv的语法?如果你想知道我的语法哪里出错了,下面是我的代码 import csv listOfAppIDs = [] #open file to read each line and add each line in file to an array. These ar
import csv
listOfAppIDs = []
#open file to read each line and add each line in file to an array. These are our appID's to search
with open('filelcation/listAppIDs.txt', 'r') as fi:
for line in fi:
listOfAppIDs.append(line.rstrip('\n'))
listOfAppIDs.sort() #alphebetically sort list
print listOfAppIDs
alreadyReviewedAppIDs = ['youseemore','streampix','streamaudio','spotify','speedtest','soundcloud-base','smartsheet-base','samsung-updates','print-over-ms-smb','exp','dicom','pop3','x11','echo','webdav','ustream','telnet','skydrive-base','rsync','outlook-web','nfs','ms-office365-base','itunes-appstore','apple-appstore','aim-mail','discard','time','akamai-client','bomgar','cisco VPN','DHCP','IBM-Clearquest','Ironmountain-Connected','MS-SCOM','MS-SSTP','SCCP','SNMPV3','WCCP','XDMCP','secureserver-mail','teamviewer-base']
print alreadyReviewedAppIDs
i=0
i2=3
with open ('filelocation/outputAppIDsToDo.csv', 'wb') as outputFile:
writer = csv.writer(outputFile, delimiter=',',)
for item in listOfAppIDs:
if(i%14==0):
i2 +=1
#for item2 in alreadyReviewedAppIDs:
# if (item2==item):
# break
writer.writerow([i2, item])
i += 1
更改此部分
with open ('filelocation/outputAppIDsToDo.csv', 'wb') as outputFile:
writer = csv.writer(outputFile, delimiter=',',)
for item in listOfAppIDs:
if(i%14==0):
i2 +=1
if item in alreadyReviewedAppIDs: # if match
continue # skips the item
writer.writerow([i2, item])
i += 1
您已经非常接近了,continue
语句跳转到forloop的下一个迭代
但是
break
语句只会停止当前循环并在其之后继续执行代码(循环)您的意思是如果应用程序列表中的项或AlreadyReviewEdapids中的项:continue?如果它在任一列表中,则继续到下一个项如果listOfAppIDs
中的item
等于item2
fromalreadyreviewedapids
则不执行语句writer.writerow([i2,item])