在练手项目的选择上,还存在疑问?不知道要从哪种项目先下手?

首先有两点建议:

最好不要写太应用的程序练手,要思考什么更像是知识,老只会写写爬虫是无用的,但是完全不写也不行。

对于练手的程序,要注意简化和抽象,但是如果简化不得当的话,很容易看几篇教程就被懒得下手了。

接下来就给大家介绍几种适合新手的练手项目。

0.算法系列-排序与查找

Python写swap很方便,就一句话(a, b = b, a),于是写基于比较的排序能短小精悍。刚上手一门新语言练算法最合适不过了,还能顺便刷题,利于找工作。简单的练习,让你受益无穷。

1.编译系列

这个系列的重点就是前面说到的简化,但是不要指望一口气写一个完整的C编译器,即使只针对C一个很小的子集。所以我们需要一步一步来,写一个计算器的解释器是很好的开始,再进一步可以写一个极简语言的解释器,譬如brainfuck。

再进一步你可以扩展已有的计算器解释器,譬如加入声明、赋值与运算、循环、流程控制, 构成一个简单的LL(1)语法,然后递归下降分析,这就可以搞一个简易同时又图灵完备的玩具语言出来了。

2.分布式系统/计网系列

这系列的项目,第一步可以从写一个简单的HTTP客户端开始,原因很简单,因为HTTP大概是最简单的应用层协议了。然后可以考虑实现一个基本的ssh,你大概每天都会用ssh,难道不想做一个自己的简易版本吗?

然后可以考虑分布式系统课上的经典作业,譬如写一个简单的RPC。可以参考Java的RPC原理以及Google的RPC框架(有Python版)。

3.操作系统系列

操作系统系列,可以尝试写一个简单的存储管理的文件系统。第一步的简化就是用一个大的空文件作为磁盘,把对磁盘的读写抽象成对这个文件的读写。基本就是实现下inode,然后包装成一个shell,支持下最基本的命令,新建、追加、读写、删除之类的操作。这个练习最有趣也最有意义的地方在于多级索引的实现,

4.周边系列

你也可以试试Jython,IronPython之类的,看看和CPython比如何。然后再试试Pypy,必然是一开始很高兴,最后发现各种常见库不支持,最后还是转回CPython。

做实验的话用IPython把Python函数当命令跑很方便。

python适合做什么生意_适合Python的5大练手项目,你练了么?相关推荐

  1. 学python适合做什么生意_吹爆这8个Python练手小项目,轻松易学

    知识本质上只是信息,我们最需要的知道的是,学以致用,做到什么程度,才是我们学习的目的所在,所以练手!实干!才是最重要的!以下就是今日推荐的简单好实现练手神器! 1. Kaggle 实战之波士顿房价预测 ...

  2. python怎么找项目做小生意_三个投资小回报大的项目,让你没钱也能做买卖!

    原标题:三个投资小回报大的项目,让你没钱也能做买卖! 投资小的买卖有哪些?这是一个浮躁的年代,人人都在追求小投资大回报,甚至有些人还想空手套白狼,现实生活中这些现象是很常见的,那么小投资大回报的生意真 ...

  3. python怎么做软件程序_看 Python 超级程序员使用什么开发工具

    Python超级程序员使用的开发工具 我以个人的身份采访了几个顶尖的Python程序员,问了他们以下5个简单的问题: 当前你的主要开发任务是什么? 你在项目中使用的电脑是怎样的? 你使用什么IDE开发 ...

  4. python怎么做面板数据分析_利用python进行数据分析之准备(一)

    原标题:利用python进行数据分析之准备(一) 欢迎关注天善智能微信公众号,我们是专注于商业智能BI,大数据,数据分析领域的垂直社区. 对商业智能BI.大数据分析挖掘.机器学习,python,R等数 ...

  5. python最适合做什么生意-个人利用Python爬虫技术怎么挣钱-10万被动收入

    个人爬虫挣钱方法大致如下 爬虫技术挣钱方法1:接外包爬虫项目 这是网络爬虫最通常的的挣钱方式,通过外包网站,熟人关系接一个个中小规模的爬虫项目,一般向甲方提供数据抓取,数据结构化,数据清洗等服务. 各 ...

  6. python怎么做彩票概率_用Python一次性把论文作图与数据处理全部搞定!

    一入科研深似海-- 年底将近,"防脱发用生姜还是黑芝麻?",研究僧们又开始为自己所剩无几的头发发愁了. 文献看到头秃,前沿课题总是无缘 置顶了一页实验组微信群.QQ群,想追踪前沿文 ...

  7. python能做什么效果_一行 Python 能实现什么丧心病狂的功能?

    发功之前友情提示:部分案例适用于Python3,在Windows下面可以用Python命令代替,具体请根据自己的修行选择. 一.江湖纯情版 1. 爱心 先来个高赞爱心的中英文结合版: print'\n ...

  8. python怎么做网页制作_[源代码]Python爬取网页制作电子书代码发布

    最近,在GitChat发布一场Chat(Chat地址请猛戳这里),人数当天就达标了,今天把文章完成提交,同时将文章中的代码发布到码云,我就等待大家前来捧场了,Chat地址请猛戳这里. 有人爬取数据分析 ...

  9. python 适合做什么生意好_推荐 10 个有趣的 Python 练手项目

    想成为一个优秀的Python程序员,没有捷径可走,势必要花费大量时间在键盘后. 而不断地进行各种小项目开发,可以为之后的大开发项目积攒经验,做好准备. 但不少人都在为开发什么项目而苦恼. 因此,我为大 ...

最新文章

  1. Lync-技巧-1.启用-用户
  2. 实例解说Linux中fdisk分区使用方法
  3. linux中tcp连接内核参数调优somaxconn
  4. springboot 使用的配置
  5. 学会它,可以替你写100行 200行 300行……的代码
  6. c语言建立一个链表,每个结点包括姓名和成绩,求C语言几道题的答案~~拜托了~~...
  7. Mac OS X下安装Java 7及配置Eclipse JDK
  8. MWPhotoBrowser 属性详解 和代理解释
  9. java爬虫实例教程_Java爬虫的实例分析
  10. Python翻译Excel文件
  11. c++filt识别C++中的函数重载
  12. iexplore.exe免费下载
  13. 9.23 未来的规划 BEC
  14. 怎样恢复误删计算机管理员,win10管理员账号误删只有普通权限怎么恢复
  15. GPS定位系统(二)——Android端
  16. use glyphs icons
  17. 功耗大好还是小好_额定功率大好还是小好
  18. 爆炸的符卡洋洋洒洒(dp)
  19. Windows 经典桌面背后的故事
  20. 线程安全问题的原因和解决方案

热门文章

  1. fiddler不能抓取浏览器数据_抓包软件 Fiddler 了解一下?
  2. mysql ddl dcl_MySQL常用DDL、DML、DCL语言整理(附样例)
  3. 学习CTF(二进制安全)一个月多的奇妙冒险~;
  4. Python基础教程:super()方法详解
  5. python函数名第一类方法、f-string格式化、迭代器及递归函数
  6. Python实现Newton和lagrange插值
  7. java配置出现的问题解释_java SE问题总结(持续更新。。。)
  8. python PyQt5中文教程☞【第八节】PyQt5控件(II)
  9. python strip()方法 去除字符串头尾指定字符 默认为空格、换行符、制表符、回车符
  10. window如何将CMD以管理员身份添加到右键菜单?