由于本人从事python已经快9年了,所以在这方面还是有一点的见解,下面就谈谈我的看法:
大学的时候我曾自己接触过几门语言,有最经典的c,比之难点的c++、java也都了解一点。但是在此之前从未系统的学习过一门计算机语言。作为一门新兴的语言,在国内其参考教材十分有限。学习python就真的难吗?不难啊!!本人自学已经工作近9年,也仅仅只是在学校学习了2年的时间。。。为什么会难呢?可以加1547251666,好友,具体聊一下学习的方法。
首先,python语言的最基本的特点就是优雅,没错一门汇编语言,这里用优雅来形容,举个简单的例子:对x,y的值进行互换,在python中其代码只有一行:x,y=y,x,你再也找不到比这更优雅的交换赋值的方法了;
另一方面其可读性是任何语言也无法比拟的;再之其强大的绘图能力也让人敬佩,除了基本的turtle制图、graphics图形库,还可引用广泛的第三方库,这些可以画出世界上最美的图形……最后我要强调一下python最值得我们去学的一点,即是它有强大的第三方库,而且,而且它在日益增多,增长速度也绝对超乎你的想象。所以我认为未来是属于python的时代。
当然python也有它的不足之处,就是慢,比c、c++、java都慢,这一点是限制它的一点,因为在不少领域对语言的运行速度都有极致的要求,你比如说导弹拦截程序,分秒必争,显然python在第一步就会被pass掉。但是对于其它领域,你比如说桥梁参数的运算,我相信20分钟和18分钟它差不了多少。第二点就站在功利的角度来谈了,就是目前计算机等级考试中没有python这个选项,当然我相信10年之后,或许是5年,我们就可以拿到python的计算机等级证书啦。现在python已经在某些地区已经加入的计算机等级考试。
同时python也是黑客常用的编程语言之一,如sql注入工具sqlmap就是用python开发的。
有很多渗透测试工具就用python开发的,如:
androguard: 安卓应用程序的逆向分析工具
immunity debugger: 脚本 gui 和命令行调试器
dpkt: 快速,轻量数据包创建和分析,面向基本的 tcp/ip 协议
mitmproxy: 支持 ssl 的 http 代理。可以在控制台接口实时检查和编辑网络流量
著名的黑客渗透测试系统kali linux中很多工具都是采用python开发的。
除此之外python还有很多好用的库:
requests: 优雅,简单,人性化的 http 库
httpie: 人性化的类似 curl 命令行的 http 客户端
beautiful soup: html 解析器
matplotlib: 制作二维图
mayavi: 三维科学数据的可视化与绘图
twisted: python 语言编写的事件驱动的网络框
django:常用的python web应用框架
python简单易用,短短几行代码就能写出一个很不错的功能,对于初学者而言是非常友好的。在第一次学习时就用到了requests模块,短短两行代码就完成了一个非常小的爬虫,这是用别的语言不可能轻易实现的。
另外就是python的语言非常简洁。代码缩进的方式也比其他的语言要优美得多。所以你在看别人的源代码的时候会感觉非常的舒适。这位后来实现自我提升做了一个很好的铺垫。
还有在无聊的时候以采集各种数据,图片,视频,小说,社交动态....,当然对于系统学习的时候,在无聊的时候,可以爬爬内涵段子,虽然被封了,但是我在工作的时候,还没有被封的时候,我爬去内涵段子的段子信息,以及神评论,然后,被批斗是不可能的。。。