帮我检查这一段代码的问题 def load_stock(filename): file1=open(filename,'r') #按行将数据存入数组里面 alist=[] string=file1.readlines() while string!=' ': alist.append(string) string=file1.readline() file1.close() return alist def find_item_list(item_list,code):#查找item是第几件商品 for i in range(len(item_list)): if code in item_list: break if i==len(item_list): return -1 else: return i def update_quantity(item_list,index,update_amt):#更新购物车中商品的个数 string=item_list[index] lst=string.split() lst[-1]=str(int(lst[-1])+update_amt) str1=','.join(lst) item_list[i]=str1 return(item_list) def get_total(cart_list): total=0.0 for item in cart_list: alist=item.split() total=total+float(alist[-2]) return total#商品的最后一项(价格)拿出,进行求和 def save_stock(filename,list_of_items): file1=open(filename,'w') for item in list_of_items: file1.write(item) file1.close() n=input('please choose your service:' '1.查找自己想要的商品是否在购物车中' '2.核对总金额,结账付款' '3.添加商品的个数' '') print(load_stock(r'C:\Users\曾照睿\Desktop\stock.txt'))
时间: 2024-03-07 21:53:33 浏览: 119
下面是一个用Python编程求阶乘和数的例子: def factorial(n): if n == 0 or n ==
这段代码存在一些问题:
1. 在load_stock函数中,while循环的条件是判断string是否等于一个空格,这是不正确的,应该判断string是否为空。正确的写法是:while string:
2. 在find_item_list函数中,if语句的判断条件不正确,应该是判断code是否等于item_list[i]。正确的写法是:if code == item_list[i]:
3. 在update_quantity函数中,变量i的命名不正确,应该是index。正确的写法是:item_list[index] = str1
4. 在save_stock函数中,每个item写入文件后,应该加上换行符。正确的写法是:file1.write(item + '\n')
5. 在用户输入服务选择时,每个选项之间缺少空格。正确的写法是:n=input('please choose your service: '
'1.查找自己想要的商品是否在购物车中 '
'2.核对总金额,结账付款 '
'3.添加商品的个数 '
'')
阅读全文