def save_money(group_price,market_price):
if group_price=='' or market_price=='':
balance=''
else:
balance=float(market_price-group_price)
if balance=='':
string="尚不清楚"
elif balance<100:
string="差额一般,可以团购"
elif balance<1000:
string="差额较大,推荐团购"
else:
string="差额巨大,特别推荐团购"
return balance,string
file=open("hotpot_data_new.csv",'r')
file1=open("hotpot_data_new1.csv",'a+')
newlist=file.readline().split('\n')[0].split(',')
for i in range(10):
file1.write(newlist[i]+',')
file1.write('差额'+','+'建议'+',')
for i in range (10,len (newlist)-1):
file1.write(newlist[i]+',')
file1.write(newlist[-1]+ '\n')
while True:
line=file.readline()
if line=='':
break
else:
newlist1=line.split(' \n')[0].split(',')
for i in range(10):
file1.write(newlist1[i]+',')
balance=str(save_money(newlist1[8], newlist1[9])[0])
advise=save_money (newlist1[8],newlist1[9]) [1]
file1.write (balance+','+advise+',')
for i in range(10,len(newlist1)-1):
file1.write (newlistl[i]+',')
file1.write(newlist1[-1]+'\n')
file1.close()
file.close()
这个报错是说你是将2个字符串进行相减了,如果进行相减的是2个数字字符串的话,你可以转换一下,
用eval(str1)-eval(str2)
相减的两个变量都用float强转一下,float(market_price)-float(group_price)