0
我沒有得到期望的預期輸出。我必須將「itemnumber」列與「imagename」列連接並保存到該csv中的另一列「image」中。例如B001_B001。它還會在圖像文件夾中創建一個重複圖像「B001_B001.jpg」。concat兩列並存儲在csv中的新列中
我輸入的是:
ItemNumber UPC Keyword ImageName ImageWChain Description
0 B001 123 XYZ B001 B001 Test1
1 B002 456 GDH B002 B002 Test2
2 B003 789 GFR B003 B003 Test3
和我的預期成果是:
ItemNumber UPC Keyword ImageName ImageWChain Description Image
0 B001 123 XYZ B001 B001 Test1 B001_B001
1 B002 456 GDH B002 B002 Test2 B002_B002
2 B003 789 GFR B003 B003 Test3 B003_B003
這是我到目前爲止有:
import csv
import os
from os.path import splitext # splits name & extension from a file
import shutil # making a duplicate copy of a file
import logging
class Image:
def image_fix(self):
#open and read csv
with open('rosary.csv') as csvfile:
#create list for sku, old_imagename_column_1, old_imagename_column_1
#and renamed new_imagename
keyList = [] #for ItemNumber
itemList = [] #for ImageName
itemList1 = [] #for ImageWChain
renamedList = [] #for Renamed NEW_ImageName
spamreader = csv.reader(csvfile, delimiter=",")
#storing all the columns into list
for row in spamreader:
keyList.append(row[0])
itemList.append(row[3])
itemList1.append(row[4])
renamedList.append(row[6])
# processing for ImageName
for item in enumerate(itemList):
oldFileName = name
newFileName = '{}_{}{}'.format(name, keyList[item[0]])
# check if the image file existsin image folder for ImageName column
if (os.path.isfile(oldFileName)):
shutil.copy2(oldFileName, newFileName) #make a duplicate image of every itemname
renamedList[item[0]] = '{}_{}{}'.format(oldFileName, keyList[item[0]])
# write the final output in new csv
with open('rosary.csv','wb') as my_csv:
csvWriter = csv.writer(my_csv,delimiter=',')
for row in zip(keyList, itemList, itemList1, renamedList):
# printing row in order
print(row[0] + '\t' + '\t' + row[3] + '\t' + '\t' +
row[4] + '\t' + '\t' + row[6])
csvWriter.writerow(row)
if __name__=="__main__":
obj = Image()
obj.image_fix()
什麼是你的代碼的問題嗎? – haifzhan
我沒有得到像圖像中預期的輸出。 :( – sachit
你得到了什麼,你可以過去它到你的問題? – haifzhan