美文网首页
OpenstreetMaps项目总结

OpenstreetMaps项目总结

作者: 学习之术 | 来源:发表于2017-08-27 12:32 被阅读24次

    前两天完成了优达学城的OpenstreetMaps项目,可能由于是第一个项目,花在项目上的时间差不多跟前期学习的时间一样多。写代码时也踩了一些坑,于是写些文字,算是对整个项目的总结。

    对开始着手项目的两点建议

    一、写项目代码时使用jupyter notebook

    一个项目代码少说得有四五百行 notebook的好处是可以一行行运行程序,而不像.py文件那样,一次得执行一个文件。

    而且还可以随时调试函数,以前的做法是新建一个文件,还得来回切换,着实不方便。

    如果清楚哪个变量的数据,直接新建个cell就可以搞定了。

    完成全部程序后,保存为.py文件,以这种形式提交代码后,你才可以看到导师对程序的审阅,现在还不支持反馈notebook形式的代码文件。

    二、遵守“准则”

    导师评价也是一条条验证你的报告是否遵守“准则”。导师对你报告的审阅结果就是这张“准则”表,不通过的地方就在表中对应地方写下建议。

    所以不要偷懒了,写报告前先他细阅读“准则”,并看看示例报告是如何与“准则”匹配的。

    编程方面的两点思考

    一、数据结构

    数据结构很重要,一个简单合适的数据结构可以让代码变得统一简洁很多。

    最初为了更详细的分类,以便能更详细的记录数据,我经一个变量采用了这样一种结构:{'eng':[],'eng_colon':{'name':[],'alt_name':[]...},'other':[],'problems':[]},结果在后续的函数中,都得额外写几行代码处理“eng_colon”的情形。后来实在觉得这样太烦了,改了数据结构,代码一下子就简洁了不少,也降低了出错的可能性。

    二、缩进错误

    不知道其他人如何,我发现自己在写程序时,即使再简单的函数,也经常无法一次性通过,总会出现bug。而所有bug中,最让我抓狂得莫过于IndentationError

    我总结出出现这错误有三种可能性:

    1. 确实是没有对齐
    2. 混用了制表符和空格
    3. 附近有其它的语法错误,比如使用了错误的数据结构
      我还不清楚具体有哪些语法错误可能会导致其它地方的缩进错误。如果排除了前两种可能性,就需要注释掉出现缩进问题的前面语句,查看是哪出了问题。

    一个问题

    提交代码时,最后的报告可否用html格式,而不是pdf呢?毕竟notebook导出的html报告比打印出来的pdf漂亮一些,还可以少一道工序。

    总结

    虽然顺利完成了项目一,但是并没有掌握前面所教授的知识,特别是对于网页抓取这块,还有些不清楚。像ET等python文档也没有通读过,后续还得花时间复习笔记。

    附录:
    项目代码Github

    相关文章

      网友评论

          本文标题:OpenstreetMaps项目总结

          本文链接:https://www.haomeiwen.com/subject/rquzrxtx.html