当前位置 博文首页 > 学习 Python 很吃力,我是不是可以放弃编程了?_weixin_39633113

    学习 Python 很吃力,我是不是可以放弃编程了?_weixin_39633113

    作者:[db:作者] 时间:2021-07-18 10:14

    从0到1,是最艰难吃力的一步。

    我15年的时候,在其它论坛发过一篇帖子,也是零基础开始学Python的。阅读量挺高的。

    希望对题主有帮助。

    使用前说明:

    本人大学专业是CS,大学的时候编程很差,毕业后并没有做程序开发的工作,但是大学听课很认真(拿了奖学金和一些其他名誉),所以各种语言的语法基础还有其他CS必修课还是有点印象的。半年前才第一次接触python,然后打开了新世界的大门。

    前不久去找工作,很高兴拿到了几个offer ,已经选择了自己超超超超级喜欢的一个,刚吃完酸菜鱼,心情比较好,决定分享一下自己的学习经验和路线,希望对其他人也有所帮助。

    不过因为本人还比较菜,所以要为加入新公司做各种功课,以免自己开车太慢导致后面塞车。所以时间不多,这个帖子的内容会比较粗略梗概。如果大家有什么问题,我会尽量回答,但是不保证自己有空和有能力可以解答。仅供参考(对,这就是免责申明:D

    下面是正文:

    总体路线: Python+Pygame+Flask+SQLAlchemy

    主要书籍:

    1.笨方法学Python (电子版)

    2.Python 核心编程(电子版)

    3. Python基础教程(纸质版)

    4. FlaskWeb开发:基于Python的Web应用开发实战(电子版)

    主要的参考网站:

    1. Assignments — Problem Solving with Algorithms and Data Structures

    http://interactivepython.org/runestone/static/pythonds/index.html666

    5.欢迎进入Flask大型教程项目! — flask mega-tutorial 1.0 documentation

    http://www.pythondoc.com/flask-mega-tutorial/724

    6.欢迎使用 Flask — Flask 0.10.1 documentation

    http://www.pythondoc.com/flask/372

    8.其他: 25本免费的Python电子书 - 博客 - 伯乐在线

    http://blog.jobbole.com/29281/863

    可以看到我的很多练习代码还有我fork 来学习的代码。 很多地方有瑕疵,大家看看了解我当时的学习进度和水平就好,(?﹏?),凭良心说,我的代码不是很好,所以并不是用来模仿学习的好对象。

    学习安排

    注:本人是业余时间,一般晚上8:00 - 12:00 和周末学习代码的,经常会有一些其他杂事,所以只能担保每天至少两小时,大家可按照自己的咸鱼时间加快速度。

    第一个月: 基础篇 (3.12 - 4.12)

    第一周:安装python2.7 ,利用笨方法学python 练习基本语法

    第二周:被推荐使用pycharm, 超级好用,强烈推荐,本人在默认设置里把制表符Tab 改成了四个空格;然后训练写了堆栈

    第三周:训练基本的数据结构,自己写链表和队列

    第四周:继续把笨方法学python 差不多敲完

    第二个月:加强篇 (4.12 - 5.12 )

    第一周:因为记忆力比较差的缘故,我又重写了一次基本的堆栈队列和链表。

    第二周:看python 核心编程《基础篇》。

    第三周:继续看python 核心编程《基础篇》,简单写斗兽棋的程序(失败)。

    第四周:继续看python 核心编程《基础篇》,继续修改斗兽棋(失败),掉头写五子棋,开始接触pygame。

    注:接下来5/6月,因为在岗工作(计算机相关工作,但不是编程开发)很忙,所以没有很多时间写代码,进度会偏慢.这期间学习的pygame 是为了锻炼基本的编程技能,还有培养自己对python 编程的乐趣。 如果你本省具有比较好的编程基础也对编程早早具有强烈的爱好,可以跳过两个月的pygame.

    第一周:继续写五子棋,然后开始用pygame 开始写打砖块 breakblock。

    第二周:继续写打砖块,为了存储游戏的数据信息,中途学了一点点json。

    第三周:写好打砖块,获得成就感。电力效果 MAX。

    第四周:抄别人的Pygame 音乐播放器,失败。因为别人的音乐播放器中 含有manage.py 暂时无法理解。所以跳过去了。

    第四个月:Pygame B + Flask (初步) (6.12-7.12)

    第一周: 抄别人的飞机大战,学会使用音乐各种创造游戏效果(然并卵,只能培养乐趣)。 学习一点点turtle 用来画图(https://docs.python.org/2/library/turtle.html) (然并卵,只能培养乐趣)。

    第二周:还在抄别人的pygame 代码(然并卵,所以被朋友责骂了,毕竟我学习python的目标还是要出去找工作的,而不是用来自娱自乐的。不过这个时候,我已经开始对python 情根深种了)。

    第三周: 开始看Flask 的那本薄薄的书,第一天快速浏览书的目录结构,第二天开始往后看,然后到了模板引擎那里死掉了。

    第四周:又看了一次Flask 的书,还是到了第四章就死掉。跑去看python核心编程《高级篇》前半部,我得静静心,因为半个月毫无进展很挫败;

    注:至此,学习python 遇到了最大的挫败感,我看一本书,来去看,每个字都能看懂,但是盖了书,我还是什么都不懂。甚至对着书本抄代码,运行起来也不对,仅仅因为我没有理解 templates 这个默认路径辨别的 文件夹是什么意思。我简直要疯掉了!!!想死的心都有了。不过接下来的两个月超级充实。大家要有被艹( ▼-▼ )的心理准备。

    第五个月:Flask (7.12-8.12)

    第一周:对着FLask 中文学习网站从头到尾敲,不懂就看第三第四次查资料问人厚着脸皮求帮助。然后顺便学习了一点http 协议 和 get post ,socket等基本网络编程知识。

    第二周:突然开窍,继续对着Flask 的中文学习网站敲,一直敲到了能够用txt作为简单存储文件来设计网站。

    第三周:把txt 改为 sqlite3, 熟悉SQL语句,初步学习SQLAlchemy

    第四周:学习cookie 和 session 等

    第六个月:Flask+SQLAlchemy (8.12-9.12)

    第一周: 练习 SQLAlchemy (https://github.com/dodoru/flask_todo),开始修改原来用sqlite3 存储数据的demo网站;

    第二周:利用flask-mail 增加发送用户密码的功能,网站功能基本OK,打包成Lilium(https://github.com/dodoru/Lilium),继续狂砍书,学会blueprint。

    第三周:继续狂看书,然后抄他们的大型博客(修改未完成)。然后写简历。

    第四周:找工作。

    ---over---

    剧场时间:

    9月1日开始找工作,挑了8家看着很喜欢的公司投递简历,拿到五个面试通知,刚好堆积在三天内,9月5日专门请假去面试(单程7个小时,自费,我本来以为会没人要我的,所以第一轮是试水),结果没想到,基本上都很顺利,同一天拿到了三个口头offer,虽然不是特别好(毕竟不是特别厉害),但是也是可以在一线城市勉强活下来了。

    然后回来等email offer , 心里很开心也有一定的纠结 ,没等到,有点怕,又投了几个简历。

    然后碰到了我超超超超级喜欢的一个创业公司,在电话面试和机试通过后让我过去,临去之前查看公司背景资料(现在还在后悔),被吓到了,结果就一直抖(到了现在还在抖),脑袋一片空白。也不知道自己回答了什么,所有的脑细胞都变成离散的颗粒,完全无法启动,所以很混乱。但是技术负责人超级nice 还是给了我一个offer ,(可以足够让我在那个城市里活下去了) , 当天回家路上我发呆了三个小时后又哭又笑又失眠又早醒,简直要疯了,所以第二天早上矜持不到四个小时,就接受了。

    下午又有收到一个电话offer :D 不过当场毫无负担地拒绝掉了,然后两天后,开始主动回复那些给我邮件offer 和口头offer 的公司,免得互相耽误,听说口头offer 如果不回复也可以,但是我总觉得如果不回复就流程变成僵尸进程,心理不舒服,回复完之后,直接结束进程特别舒爽。

    之后到现在还是在做梦的状态,现在在学 js 和 jquery 还有 scrapy. :

    最后

    能够在半年内快速学习python+flask+SQLAlchemy 仅仅靠个人闭门造车是不可能的。

    用脚趾头都能猜出我肯定有搜索各种资料和问题,潜水在几个技术群和博客里默默围观的。

    为了避免被人肉,就不自爆技术群了。这是我在知乎的回答,是讲怎么向大牛们请教问题的:

    如何向领域内的大牛求助,有什么注意事项?

    我觉得最重要是态度,动机,坦诚,水平。

    求学的态度要好,厚脸皮,人家帮你是善良,不理你是正常,所以愿意指点就应该感恩了。

    动机要纯良,不要恶意满满,不要故意挖坑给对方跳,不要利用小聪明或者咬文嚼字故意曲解对方的话语作为把柄。基本上,大牛门见多识广,大多会判定对方是有心向学还是故意找茬,偶尔发生误判也是为了自我保护。

    坦诚大概是我身上为数不多的闪光点,自己是怎么想的,是不是真的懂,有没有学过,有没有接触过,做过哪些尝试和推论,前因后果,如果对方问,就坦诚地说。绝对不要不懂装懂。

    水平就是问之前至少搜一搜看看有没有类似的问题,就我来说,大部分遇到的问题都不是我一个人的问题。所以问之前,先搜索看看别人怎么说的,如果不理解或者找不到合理的解释,就可以发问了。

    http://www.zhihu.com/question/35661919/answer/64048242900

    祝我幸福快乐,早成小牛,请保佑我:D

    the same to you.

    ——————————2015年9月————————————

    有很长一段时间,我看到这篇文章,会很难受。

    我当时对小牛的标准是很低的,那时候我在井底,觉得跳出去井口,就成为小牛。结果,当我跳出井口,发现世界没有我想象那么美好,我在这世界丛林中又太卑微。

    现在,我没有幸福快乐。

    但是,对过去感到自豪羞愧难受唯独不后悔。

    —————————— 2017年6月 ————————————

    cs