每日任务day0814:小小勇者成长记之钓鱼日记(字典推导式)
目录
每日练习
鱼予谁购
鱼贵十钱
按价就卖
清晨,小小勇者背着木制鱼竿和小桶,来到湖边。湖面静得像一面蓝色的镜子,偶尔有鱼跃出水面,溅起小小的水花。他今天的目标是钓够十条鱼,然后去湖边的鱼贩换些铜币。湖边常驻的鱼贩有三位:
-
老巴里收鲫鱼和鲤鱼,价格分别是5铜和7铜;
-
赛琳只收银鳞鱼,每条15铜;
-
托马斯专收金鳍鱼,每条20铜。
小小勇者在水草多的地方下竿,第一小时钓上两条鲫鱼和一条银鳞鱼。午后,他接连钓到三条鲤鱼、一条金鳍鱼,以及两条银鳞鱼。傍晚收竿时,他把鱼按种类分好放进桶里,准备明天去卖掉。回到小屋,勇者拿出记事本,把今天遇到的鱼贩、他们收购的鱼种以及价格记录下来。想着:“如果能整理成一张表格,明天卖鱼时就能快速找到合适的买家,同时优先卖高价鱼。”夜晚,他又将鱼价按高低排序,心里默默盘算:先卖金鳍鱼和银鳞鱼,再卖鲤鱼和鲫鱼,既省时间又能获得更多铜币。
每日练习
鱼予谁购
清晨钓鱼结束后,勇者整理桶里的鱼,想到记录鱼贩信息可以节省明天卖鱼的时间。于是他用字典推导式生成一个新的鱼贩与收购鱼种的对应表便携使用。
fish_dict = {"老巴里": ["鲫鱼", "鲤鱼"],"赛琳": ["银鳞鱼"],"托马斯": ["金鳍鱼"] } new_dict = {fishman: fish_list for fishman, fish_list in fish_dict.items()} print(new_dict)
对代码进行运行测试:
鱼贵十钱
傍晚休息时,勇者想着优先卖高价鱼能获得更多铜币,于是筛选出价格高于10铜的鱼。
fish_prices = {"鲫鱼": 5,"鲤鱼": 7,"银鳞鱼": 15,"金鳍鱼": 20 } expensive_fish = {fish: price for fish, price in fish_prices.items() if price > 10} print(expensive_fish)
对代码进行运行测试:
按价就卖
夜晚在小屋里,勇者将鱼价按高低排序,规划卖鱼顺序,以节省时间。
fish_prices = {"鲫鱼": 5,"鲤鱼": 7,"银鳞鱼": 15,"金鳍鱼": 20 } # 升序排序 sorted_fish = {fish: price for fish, price in sorted(fish_prices.items(), key=lambda x: x[1])} print(sorted_fish)# 降序排序 sorted_fish_desc = {fish: price for fish, price in sorted(fish_prices.items(), key=lambda x: x[1], reverse=True)} print(sorted_fish_desc)
对代码进行运行测试: