python3 def sellcommodity(self): p = int(input('请输入商品编号:'))

Python017

python3 def sellcommodity(self): p = int(input('请输入商品编号:')),第1张

types = [2,4,6] # 类属性

def sellcommodity(self):

    p = int(input('请输入商品编号:'))

    if p in types:

        print('ok')

    else:

        print('no')

sellcommodity() # 输入1 no 输入2 ok

str.find(sub)

查找字符串内是否包含子字符串sub,如果包含则返回子字符串首字符的索引,否则返回-1

str.find(sub) == 0

判断str是否以sub开头,相当于

str.startswith(sub)

不公用panda,所以直接用列表和字典来写#最终统计后的结果,字典格式products = {}#读取的记录,列表格式records = []#读取文件的每一行,列表格式lines = []#读取文件,将所有内容写入列表recordswith open("productinfo.txt","r") as f:#循环读取while True:line = f.readline()#读到结尾退出循环if not line:break#如果每行的内容结尾有换行符就舍去if line[-1] == '\n':line = line[:-1]#把每行的数据以逗号为标志分割lines = line.split(',')#把分割的数据追加到列表records.append(lines)#遍历读到的结果,将结果经过计算后写入字典productsfor record in records:#每条记录的第一项作为字典的KEY,如果这个KEY在字典中就在基础上增加值if record[0] in products:products[record[0]]['total_sales'] += eval(record[2])products[record[0]]['total_money'] += eval(record[1]) * eval(record[2])#如果这个KEY不在字典,就设置为record原值else:products[record[0]] = {'total_sales':eval(record[2]),'total_money':eval(record[1]) * eval(record[2])}#排序sales=sorted(products.items(), key=lambda x:x[1]['total_sales'])print("最大销量商品编号:", sales[-1][0],"销量:",sales[-1][1]['total_sales'])print("最低销量商品编号:", sales[0][0],"销量:",sales[0][1]['total_sales'])