当我运行我的程序时,在空白的CSV文件中,每个产品之间似乎只有一行间隙。你如何摆脱这种差距? (如第一张图所示)
This is what happens when I fully run my code
这是我的代码:
import csv
redo='yes'
receipt=open('receipt.txt', 'wt')
stock=open('Stock_.csv', 'rt')
stock_read=csv.reader(stock)
blank_csv=open('Blank_csv_.csv', 'wt')
blank_csv_write=csv.writer(blank_csv)
clothes=(input('\nPlease enter the GTIN-8 code of what you want to purchase: '))
quantity=int(input('\nPlease enter the amount of this product you want to buy: '))
for row in stock_read:
GTIN=row[0]
product=row[1]
current=row[2]
re_order=row[3]
target=row[4]
if clothes==GTIN:
current=int(current)-quantity
blank_csv_write.writerows([[GTIN,product,current,re_order,target]])
stock.close()
blank_csv.close()
reorder_receipt=open('receipt.txt', 'wt')
blank_csv2=open('Blank_csv_.csv', 'rt')
blank_csv_read2=csv.reader(blank_csv2)
stock_check=input('Press \"ENTER\" if you want to check the current stock leavels: ')
if stock_check=='':
for row in blank_csv_read2:
for field in row:
GTIN=row[0]
product=row[1]
current=int(row[2])
re_order=int(row[3])
target=int(row[4])
if current<=re_order:
re_stock=target-current
reorder_receipt.write(GTIN+' '+product+' '+str(current)+' '+str(re_order)+' '+str(target)+' '+str(re_stock)+'\n')
blank_csv2.close()
reorder_receipt.close()
提前谢谢!!!!
答案 0 :(得分:1)
这似乎是THIS问题的重复。我相信那里的答案将帮助您解决问题。提示:换行=''
答案 1 :(得分:0)
我没有详细深入研究您的代码,但乍一看,如果您想删除每行数据之间的额外行,请删除换行符&#39; \ n&#39 ;从reorder_receipt.write()函数调用结束。
换句话说,修改:
reorder_receipt.write(GTIN+' '+product+ ... +str(re_stock)+'\n')
是:
reorder_receipt.write(GTIN+' '+product+ ... +str(re_stock))
答案 2 :(得分:0)
我猜问题出在target=row[4]
上。
可能是“目标”字符串正在获得额外的\ n。剥离它可能会解决问题。
target.strip()