Python浅析-从植物大战僵尸源代码入门Python 从Python就业前景分析如何学习

源代码私信小编“学习”领取

 

Python到底有多火呢?Python的简单易学,应用领域广让Python语言一路飙升到不可磨灭的重要地位。先来看看Python的就业方向吧

Python就业方向

 

0、WEB开发

 

Python拥有很多免费数据函数库、免费web网页模板系统、以及与web服务器进行交互的库,可以实现web开发,搭建web框架,目前比较有名气的Python web框架为Django。从事该领域应从数据、组件、安全等多领域进行学习,从底层了解其工作原理并可驾驭任何业内主流的Web框架。

 

1. 桌面软件

 

Python在图形界面开发上很强大,可以用tkinter/PyQT框架开发各种桌面软件!

 

2. 网络编程

 

网络编程是Python学习的另一方向,网络编程在生活和开发中无处不在,哪里有通讯就有网络,它可以称为是一切开发的“基石”。对于所有编程开发人员必须要知其然并知其所以然,所以网络部分将从协议、封包、解包等底层进行深入剖析。

 

3. 爬虫开发

 

在爬虫领域,Python几乎是霸主地位,将网络一切数据作为资源,通过自动化程序进行有针对性的数据采集以及处理。从事该领域应学习爬虫策略、高性能异步IO、分布式爬虫等,并针对Scrapy框架源码进行深入剖析,从而理解其原理并实现自定义爬虫框架。

 

4. 云计算开发

 

Python是从事云计算工作需要掌握的一门编程语言,目前很火的云计算框架OpenStack就是由Python开发的,如果想要深入学习并进行二次开发,就需要具备Python的技能。

 

5. 人工智能

 

MASA和Google早期大量使用Python,为Python积累了丰富的科学运算库,当AI时代来临后,Python从众多编程语言中脱颖而出,各种人工智能算法都基于Python编写,尤其PyTorch之后,Python作为AI时代头牌语言的位置基本确定。

 

 

6. 自动化运维

 

Python是一门综合性的语言,能满足绝大部分自动化运维需求,前端和后端都可以做,从事该领域,应从设计层面、框架选择、灵活性、扩展性、故障处理、以及如何优化等层面进行学习。

 

7. 金融分析

 

金融分析包含金融知识和Python相关模块的学习,学习内容囊括Numpy\Pandas\Scipy数据分析模块等,以及常见金融分析策略如“双均线”、“周规则交易”、“羊驼策略”、“Dual Thrust 交易策略”等。

 

8. 科学运算

 

Python是一门很适合做科学计算的编程语言,97年开始,NASA就大量使用Python进行各种复杂的科学运算,随着NumPy、SciPy、Matplotlib、Enthought librarys等众多程序库的开发,使得Python越来越适合做科学计算、绘制高质量的2D和3D图像。

 

9. 游戏开发

 

在网络游戏开发中,Python也有很多应用,相比于Lua or C++,Python比Lua有更高阶的抽象能力,可以用更少的代码描述游戏业务逻辑,Python非常适合编写1万行以上的项目,而且能够很好的把网游项目的规模控制在10万行代码以内。

 

总结:

发展前景一:Linux运维

 

发展前景二:Python Web网站工程师

 

发展前景三:Python自动化测试

 

发展前景四:数据分析

 

发展前景五:人工智能

那么问题来了,想学习Python的如何学呢?

1、Github是一个面向开源及私有软件项目的托管平台,大量的编程学习者在此聚集学习

2、Python中文学习大本营,笔者认为是对初学者很友好的一个网站,你想要的这里都有

3、W3C Python微课

不一一例举,相信很多人都有自己喜欢去学的网站,问题在于这样学起来东拼西凑不系统

读到此处也花不了多长时间了,耐心看完~

笔者整理比较系统的一个好资源在此奉上

作为初学者,前两周如此规划

  • 熟悉基本概念(变量,条件,列表,循环,函数)
  • 练习超过 30 个编程问题
  • 利用这些概念完成两个项目
  • 熟悉至少 2 个框架
  • 开始使用集成开发环境(IDE),Github,hosting,services 等

 

 

 

第一周:熟悉 Python

要积极探索 Python 的使用方法,尽可能多的完成下面这些任务:

  • 第一天:基本概念(4 小时):print,变量,输入,条件语句
  • 第二天:基本概念(5 小时):列表,for 循环,while 循环,函数,导入模块
  • 第三天:简单编程问题(5 小时):交换两个变量值,将摄氏度转换为华氏温度,求数字中各位数之和,判断某数是否为素数,生成随机数,删除列表中的重复项等等
  • 第四天:中级编程问题(6 小时):反转一个字符串(回文检测),计算最大公约数,合并两个有序数组,猜数字游戏,计算年龄等等
  • 第五天:数据结构(6 小时):栈,队列,字典,元组,树,链表。
  • 第六天:面向对象编程(OOP)(6 小时):对象,类,方法和构造函数,面向对象编程之继承
  • 第七天:算法(6 小时):搜索(线性和二分查找)、排序(冒泡排序、选择排序)、递归函数(阶乘、斐波那契数列)、时间复杂度(线性、二次和常量)

别急着安装 Python 环境!

这看起来很矛盾,但是你一定要相信我。我有几个朋友,他们因为语言工具包和 IDE 安装的失败而逐渐失去了学习下去的欲望。因此,我的建议是先使用一些安卓 app 来探索这门语言,比如编程英雄(
https://play.google.com/store/apps/details?id=
com.learnprogramming.codecamp)或者在线代码游乐场 Repl(https://repl.it/)等等。如果你是个技术小白,安装 Python 环境可不是你的首要任务。

第二周:开始软件开发(构建项目)

接下来,让我们朝着软件开发任务进军吧!不妨尝试综合你学到的知识完成一个实际的项目:

  • 第一天:熟悉一种 IDE(5 小时): IDE 是你在编写大型项目时的操作环境,所以你需要精通一个 IDE。在软件开发的初期,我建议你在 VS code 中安装 Python 扩展或使用 Jupyter notebook。
  • 第二天:Github(6 小时):探索 Github,并创建一个代码仓库。尝试提交(Commit)、查看变更(Diff)和上推(Push)你的代码。另外,还要学习如何利用分支工作,如何合并(merge)不同分支以及如何在一个项目中创建拉取请求(pull request)。
  • 第三天:第一个项目——简单计算器(4 小时):熟悉 Tkinter,创建一个简单的计算器
  • 第四、五、六天:个人项目(每天 5 小时):选定一个项目并完成它。如果你不知道你该做什么,可以查看下面的清单(https://www.quora.com/what-some-good pythonprojects -for-an- middle - programmer/answer/jhankar - mahbub2)
  • 第七天:托管项目(5 小时):学习使用服务器和 hosting 服务来托管你的项目。创建一个 Heroku 设置并部署你构建的应用程序。

为什么要写项目?

如果仅仅按部就班地学习课堂上或视频中的内容,你无法拥有独立思考能力。所以,你必须把你的知识应用到一个项目中。当你努力寻找答案时,你也在慢慢地学会这些知识。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值