人生苦短,我用 Python

“ 阅读文本大概须要 4.2 分钟python

本文首发于公众号「Python知识圈」,欢迎关注。c++

作任何事情以前,咱们都要了解事情的前因后果,学习一门语言也是如此。只有知根知底,咱们才能有明确的方向和目标,今天我带你们来看看 python 的前世此生。程序员

诞生正则表达式

创始人:Guido van Rossum。
国籍:荷兰。
主要成就:发明 Python 语言。
发明日期:1989年圣诞节。
发明初衷:为了打发圣诞节的无趣,决心开发一个新的脚本解释程序。
名字由来:从做者喜欢的肥皂剧「Monty Python飞行马戏团」中得名。数据库

语言特色编程

Python 的设计哲学是「优雅」、「明确」、「简单」。
Python 的设计理念是:用一种方法,最好是只有一种方法来作一件事。
因此,python 源码具有好的可读性。浏览器

为了证实 Python 的简洁,我给你们准备了一个福利,在七夕节送给你爱的人。
这个福利只需一行代码就够了。bash

print('\n'.join([''.join([('AndyLove'[(x-y)%8]if((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3<=0 else' ')for x in range(-30,30)])for y in range(15,-15,-1)]))
复制代码

执行结果:网络


心动了吗?心动不如行动。赶忙详细了解下强大的 Python。机器学习

Python 是彻底面向对象的语言。函数、模块、数字、字符串都是对象。而且彻底支持继承、重载、派生、多继承,有益于加强源代码的复用性。Python 支持重载运算符和动态类型。

Python 提供了丰富的 API 和工具,以便程序员可以轻松地使用 C 语言、C++、Cython 来编写扩充模块。Python 编译器自己也能够被集成到其它须要脚本语言的程序内。所以,不少人还把 Python 做为一种“胶水语言”(glue language)使用。使用 Python 将其余语言编写的程序进行集成和封装。

主要特色以下:

1 简单
Python 是一种表明简单思想的语言。

2 易学
Python 有极其简单的语法。

3 免费、开源
Python 是 FLOSS(自由/开放源码软件)之一。

4 高层语言
使用 Python 编写程序时无需考虑如何管理程序使用的内存一类的底层细节。

5 可移植性
Python 已被移植到不少平台,这些平台包括 Linux、Windows、FreeBSD、Macintosh、Solaris、OS/二、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE 甚至还有 PocketPC。

6 解释性
能够直接从源代码运行。在计算机内部,Python 解释器把源代码转换为字节码的中间形式,而后再把它翻译成计算机使用的机器语言。

7 面向对象
Python 既支持面向过程编程也支持面向对象编程。

8 可扩展性
部分程序可使用其余语言编写,如c/c++。

9 可嵌入型
能够把 Python 嵌入到 c/c++ 程序中,从而提供脚本功能。

10 丰富的库
Python 标准库确实很庞大。它能够帮助你处理各类工做,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk 和其余与系统有关的操做。

Python版本

Python 主要版本有 2.x 和 3.x。2.x 和 3.x 相比主要有哪些变化?

print

在进行程序调试时用得最多的语句可能就是 print,在 Python 2 中,print 是一条语句,而 Python 3 中做为函数存在。有人可能就有疑问了,我在 Python 2 中明明也看到当函数使用。

# py2
print("hello")

#输出:
hello

#py3
print("hello")
#输出:
hello
复制代码

然而,你看到的只是表象,那么上面两个表达式有什么区别?从输出结果来看是同样的,但本质上,前者是把 ("hello") 看成一个总体,然后者 print() 是个函数,接收字符串做为参数。

# py2
print("hello","brucepk")

#输出:
('hello', 'brucepk')

#py3
print("hello","brucepk")
#输出:
hello brucepk
复制代码

这个例子就很明显了,在 py2 中,print 语句后面接的是一个元组对象,而在 py3 中,print 函数能够接收多个位置参数。

编码

Python2 的默认编码是 asscii,这也是致使 Python2 中常常遇到编码问题的缘由之一,至因而为何会使用 asscii 做为默认编码,缘由在于 Python 这门语言诞生的时候还没出现 Unicode。Python 3 默认采用了 UTF8 做为默认编码,所以你再也不须要在文件顶部写 # coding:utf-8 了。

其余的不一样点就不一一列举了,由于做者已经通知你们了。

2018年3月,该语言做者在邮件列表上宣布 Python 2.7将于2020年1月1日终止支持。用户若是想要在这个日期以后继续获得与Python 2.7有关的支持,则须要付费给商业供应商。

版本选择

因此有选择困难症的同窗不用纠结了,

小白们直接选 python3 学习吧。

可是有些小白在我技术交流群反馈他们如今学习 Python 仍是选择 Python2,缘由是:网上找的教程资料都是 Python2 的,扎心了,老铁们。我网盘里有大量 Python3 的学习资料,公众号回复「py」获取。

人生苦短,我用 Python

7 月 20 日,IEEE 发布 2017 年编程语言排行榜:Python 高居首位。

Python 现在这么火爆的缘由是什么呢?如下几点分析供参考。

12 年到 14 年是云计算最火爆的几年,大批创业公司和巨头挤破头地进军云计算领域,你们都在作 IAAS,最著名的云计算开源平台 OpenStack 就是基 于Python 开发的,为此催生出很多 Python 岗位。

14 年到 15 年是「大众创新,万众创业」口号喊得最响两年,北京大街小巷彷佛人人都是创业者,O2O、P2P 产品如雨后春笋般冒出,什么语言最适合快速搭建原型?固然是 Python,Python 的开发速度一个顶三。

16 年 17 年人工智能火遍大江南北,AlphaGO 的出现让业界为之兴奋,人工智能再也不是概念,而人工智能、机器学习的首选语言就是Python。

这两年特别是网络爬虫火得一塌糊涂,10个写爬虫的9个在用Python,为何爬虫这么火,这个仍是跟大数据有关,由于数据挖掘、分析、机器学习、人工智能都须要大数据的支撑,而真正有大数据的厂商没几个,因此小厂不得不经过爬虫去获取数据。

Python 如此简洁和强大,因此,人生苦短,我用 Python。

因此我给想转行入 IT 的人一些建议,当你还在是选择 Java 仍是选择 Python 这个问题面前徘徊时,不妨想一想趋势,虽然 Java 仍然是如今世界上最流行的语言,可是你如今学 Java,和入行多年的人来讲,你毫无胜算。Python 做为新生代的宠儿,是将来的趋势语言。因此,当你毫无优点时,你应该把赌注所有押在趋势上,这是最有可能让你弯道超车的方式。

写在最后

感谢你能看到这里,但愿我写的东西可以让你有到收获,但愿你们能多给点支持,该关注关注,该点赞点赞,该转发转发,有什么问题欢迎在后台联系我,也能够在后台加入技术交流群,群里有大神,能够一块儿交流学习。


推荐阅读:

零基础学 python 之 if 语句

100 行代码找出你中意的书




「Python知识圈」公众号专一:

1.python 技术分享

2.python 爬虫分享

3.资料、工具共享

欢迎关注咱们,一块儿成长!