作业讲解
""" 2.读取 youbian.txt 文件中的数据, 完成邮编查询的操作 输入邮编号,如果有此邮编,输出对应的城市 否则提示 无此邮编 注意:如果读到的文件中有特殊符号的话 可以把文件内容拷贝到一个新建的文件中 """ path = r"src/youbian.txt" #方式一 """ #打开 file = open(path,"r",encoding="utf-8") #读取 info_list = file.readlines() print(info_list) code = input("请输入需要查询的邮编:") #处理数据,for-else的使用: # 如果for循环中的出现了break,同时break如果不执行,则else在最后会执行,如果break执行了,则else不会执行 for info in info_list: if code == info[1:7]: print("%s对应的城市为:%s" % (code,info[9:-4])) break else: print("无此邮编") #关闭文件 file.close() """ #方式二 #打开 file = open(path,"r",encoding="utf-8") #读取 info_list = file.readlines() print(info_list) code = input("请输入需要查询的邮编:") for info in info_list: if code in info: #获取code对应的城市 data = info.rstrip(",\n") datalist = eval(data) #[110105, '北京市朝阳区'] <class 'list'> print("%s对应的城市为:%s" % (code,datalist[1])) break else: print("无此邮编") #关闭文件 file.close()""" 开房查询 输入名字,查询其kaifanglist.txt文件中的开房记录, 如果没有,是一个单纯哥们, 如果有的话,将其所有开房信息写入到以这哥们命名的文件中 """ """ 思路: a.读取文件内容 b.输入名字,查询过程 c.将查询的结构写入到一个新的文件中去 """ import os #a.读取文件内容 def readfile(path): if not os.path.exists(path): print("路径不存在") return f = open(path,"r",encoding="utf-8") lt = f.readlines() f.close() #获取所有的信息 return lt #b.输入名字,查询过程 #思路:不管是否查找到数据,最后返回一个列表,根据列表是否为空就可以判断被查询人是否有开房记录 def searchbyname(name,path): sublt = [] #获取所有人的信息 alllt = readfile(path) for line in alllt: if name == line.split(",")[0]: sublt.append(line) return sublt #c.将查询的结构写入到一个新的文件中去 def writeresult(name,singlelt): if singlelt: print(name + "果然去开房了~~~~") #写入 #路径表示一 # f = open(name + ".txt","a",encoding="utf-8") #路径表示二 #拆分路径,结果是元组 (父路径,子路径) subpath = os.path.split("src/kaifanglist.txt") f = open(os.path.join(subpath[0],name + ".txt"), "a", encoding="utf-8") for line in singlelt: f.write(line) f.flush() f.close() print("数据提取成功") else: print(name + "是个好兄弟,好好珍惜~") #调用 if __name__ == "__main__": while True: name = input("请输入需要查找的人的名字【输入q退出】:") if name == "q": break else: result = searchbyname(name,r"src/kaifanglist.txt") writeresult(name,result)
一、面向对象综合案例-购物车管理系统
""" 属性: 商品名称name 商品价格price 商品剩余量balance """ class Goods(object): __slots__ = ("gname","price","balance") def __init__(self,gname,price,balance): self.gname = gname self.price = price self.balance = balance def __str__(self): return "【Goods】商品名称:%s,商品价格:%s,商品剩余量:%s" % (self.gname,self.price,self.balance) __repr__ = __str__""" 商品仓库类Storage 属性: 商品列表goods_list ,默认存放四个商品, 商品信息如下 商品名称

419

被折叠的 条评论
为什么被折叠?



