[英]Cannot remove double quotes from a list element using python
我試圖通過使用strip或replace從一些列表元素中刪除一些多余的雙引號,但它們不會被刪除。 我正在使用以下
with open(source_initial2, 'r', encoding='ISO-8859-1',newline='') as csvf:
reader = csv.reader(csvf, delimiter=";")
for row in reader:
for i in range(len(row)):
if "\"" in row[i]:
row[i].replace('\"','')
igecontents.append(row)
return igecontents
csv中的行如下所示:
DCA.P/C.06190;7613329007877;WENGER, COBALT 16 COMPUTER BACKPACK;" BLUE (R)""";35,92;Yes
DCA.P/C.06191;7613329007914;WENGER, PILLAR 16 COMPUTER BACKPACK;" BLACK/GRAY (R)""";35,92;No
這工作正常:
import csv
with open('names.csv', 'r') as csvf:
output = []
for row in csvf.readlines():
output.append(row.replace('\"', ''))
with open('outfile','a') as f:
f.writelines(output)
超出檔次的內容:
DCA.P/C.06190;7613329007877;WENGER, COBALT 16 COMPUTER BACKPACK; BLUE (R);35,92;Yes
DCA.P/C.06191;7613329007914;WENGER, PILLAR 16 COMPUTER BACKPACK; BLACK/GRAY (R);35,92;No
您的代碼中有一些多余的多余部分,例如檢查引號是否在行中。...也不需要讀取器對象-您已經使用open(...)打開了文件。 “)作為csvf語句。
python中str對象的replace
函數返回一個新的str,並且不修改調用它的對象,因此您應該做的是
row[i] = row[i].replace('\"','')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.