1 题目分析如下
1.1 category 类
要求在category class 中定义四五个函数:
- deposit(amount, description=''),用了添加以下格式的内容:{"amount": amount, "description": description};
- withdraw()函数,与desposit()类似,但是amount需要改成负数,若有amount发生,需要将founds减去对应的amount值,并返回True,否则返回False;
- get_balance()函数,返回deposit()函数和withdraw()函数发生后的结果;
- transfer(amount, another list)函数,判断funds是否充足,若充足,将deposit()函数和withdraw()函数内容添加进去,并返回True,反之亦然;
- check_funds()函数,当amount > balance of the budget category时返回False,否则返回True;
- 输出函数,要求标题行30个字符,名称居中,两侧为“*”字符,description靠左对齐,最大23位,多余的不显示,amount靠右对齐,最大7位,多余的不显示, 新增一行Total显示;
1.2 create_spend_chart() 函数
为一个打印函数,要求如下:
- 显示每个category的花费百分比
- 左侧显示0-100的标签,用'o'字符表示柱高,不是整数的,应该四舍五入到最近的10处
- 水平线应该比最后一个bar空两行
- 每个category的名称在对应的bar下方垂直显示
- 最上方显示标题为"Percentage spent by category"
2 示例输出
category输出: