【每周一坑】房贷计算器 |【解答】生成九宫格图片

简介: 因为是“刚需”,所以网上早有无数的版本。有人已经用过,有人以后可能会用。有没有想过,类似这种小工具,其实你自己也可以实现。

大家好,每N周一坑栏目又来啦😏


今天的坑是一个很简单但很实用的小程序:


房贷计算器


因为是“刚需”,所以网上早有无数的版本。有人已经用过,有人以后可能会用。有没有想过,类似这种小工具,其实你自己也可以实现。


输入:


  1. 贷款金额
  2. 贷款期限
  3. 标准年利率
  4. 利率浮动倍数


输出:

两种贷款方式

等额本息


  1. 每月还款
  2. 总利息


等额本金


  1. 首月还款
  2. 每月递减额
  3. 总利息


效果:



我们只需要实现功能,并不需要推导数学公式,所以你用现成的公式即可。我这里就不把公式给出了,因为搜索是开发的重要技能,也其实是今天这个坑的重点。


完成之后,可以跟网上的已有工具对比下正确性。


附加题:


  1. 做成 GUI 版本
  2. 做成网页版(JS)


经常有人会说,“×××这个功能网上早就有啦”,“用×××不就可以了”……话是没错,可我们是在学编程哎,不就是要靠着一个个小练习积累经验嘛。看别人程序写得好,是因为你看到的也许是人家第几十万行代码。


不光是房贷计算器,类似的一些小工具,都可以作为初级练手的小程序,甚至写成网页/App/小程序还可能赚钱。亲自做一做才知道未必是想象中那么容易,也会遇到很多小问题。


参考代码将在下周给出,也可学习其他同学在留言中提交的代码。


期待各位同学提交解答。

提交代码可以使用 paste.ubuntu.com

codeshare.io 等代码分享网站,只需将代码复制上去保存,即可获得一个分享地址,非常方便。



【解答】生成九宫格图片


上次的题目 生成九宫格图片,是对图像处理以及 PIL 库的一个练习。关键方法是 Image 对象的 corp 方法。函数原型:


crop(self, box=None)


box 是四个参数的元组,分别是设置截图的左、上、右、下的坐标位置。


返回值则是以这个位置裁剪出的图像区域。


核心代码参考:


from PIL import Image
img = Image.open('src.jpg')
w, h = img.size
rowheight = h // 3
colwidth = w // 3
for r in range(3):
    for c in range(3):
        box = (c * colwidth, r * rowheight, (c + 1) * colwidth, (r + 1) * rowheight)
        i = img.crop(box)
        i.save('pic_%d.jpg' % (r*3+c))


@GS、@凌烟、@sociopath 三位同学提交了代码。其中 @凌烟 处理了长方形图片的裁剪,@GS 更进一步,用填白的方式保证了长方形图像裁剪后的完整性。


感谢各位同学的参与。

期待在下一期中看到你的代码!


如需了解视频课程及答疑群等更多服务,请号内回复 码上行动

代码相关问题可以在论坛上发帖提问 bbs.crossincode.com

推荐阅读:

开发工具 | 世界杯 | 高考 | 我用Python | 知乎 | 排序 | 朋友圈 | 电影票 | 技术宅 | 火车票 | 单词表 | 押韵工具 | 新手建议 | 就业

相关文章
|
7月前
蓝桥杯真题代码记录(纸张尺寸
蓝桥杯真题代码记录(纸张尺寸
43 0
|
7月前
|
前端开发
【HTML】过年不能放烟花,那就放电子烟花
闲谈 大家回家过年可能都多多少少放过些🧨,但是有些在城市上过年的小伙伴可能就没有机会放鞭炮了。不过没关系,我们懂技术,我们用技术自娱自乐,放电子烟花,总不可能被警长叔叔敲门问候吧。
75 0
|
7月前
|
开发者
如何在游戏中实现一个好看的金币效果
如何在游戏中实现一个好看的金币效果
104 1
|
7月前
|
小程序
html+css+js实现带有转盘的抽奖小程序
html+css+js实现带有转盘的抽奖小程序
132 0
|
7月前
|
前端开发
好看的前端计算器代码分享(html+css+js制作计算器)
好看的前端计算器代码分享(html+css+js制作计算器)
165 0
除夕最炫烟花代码
除夕最炫烟花代码
181 0
|
计算机视觉 Python
【每周一坑】生成九宫格图片
非常简单的功能,但在开发中很常见,很多网页/应用里缩略图都是对图片进行缩放+切割得到的。
|
数据安全/隐私保护 计算机视觉 Python
【每周一坑】新个税计算器 + 【解答】数字水印
详细解答和参考代码将在下次栏目中给出,也可以其他同学在留言中的代码。
|
前端开发 JavaScript
2023跨年代码(烟花+背景音乐)
2023跨年代码(烟花+背景音乐)
357 0
|
C语言 C++
C/C++实现跨年表白烟花
C/C++实现跨年表白烟花
549 0