2016年7月23日"Python基础s14-Day1"
两年前还在学校上课时,偶然在51cto上看到了一篇博文"普通运维人员就是秋后的蚂蚱",看这篇文章时我还在某个机构学运维的课程。看完以后我跟任教老师说了下文章大概的内容,他说如果你学了python当你出去面试运维时肯定会薪资待遇高一些。当时自己也找了点视频但是没有开发基础又没有人指点学了将近一个月的时间后就放弃了。几个月过去了我开始大量的投放简历去面试工作当时有几个公司的面试官问我会Pthon吗?我都是回答会点基础语法(if...elif...else)简直太low了。根本不好意思说会。当时有一个在搜狐畅游工作的前辈所在的团队在招人我说我想去试试看看能不能面试上,结果一句话就让我没有面试的机会了。(会Python吗?不会Python的话我们这里不要!)就这样一个工作机会就与我擦肩而过了。后来面试了几天找到了一份工作,一直到今天经历了两家公司。工作内容都是些安装部署、维护一些站点等基础的工作。工作中发现不会点开发语言做运维跟本不敢跟开发讨论程序上的问题,基本上就是开发说你环境哪里哪里有问题我就赶紧去调整根本就没有往程序本身是不是有问题呢。你的代码写的有没有问题呢!越来越多的公司开始要求自动化,自动化安装部署,自动化监控等等。还是与Python息息相关啊(我的天呐!)。于是下定决心好好学python那么问题来了!怎么学?看书学、看视频学、去培训?思前想后决定去培训学吧。于是我就投奔了(Alex,金角大王)以后跟着大王好好学Python争取早日走向人生的巅峰。言归正传下面总结一下第一天学了哪些知识点:
Python是什么?
Python(英国发音:/?pa?θ?n/ 美国发音:/?pa?θɑ?n/),是一种面向对象、直译式的计算机程序语言,具有近二十年的发展历史。它包含了一组功能完备的标准库,能够轻松完成很多常见的任务。它的语法简单,与其它大多数程序设计语言使用大括号不一样,它使用缩进来定义语句块。
与Scheme、Ruby、Perl、Tcl等动态语言一样,Python具备垃圾回收功能,能够自动管理内存使用。它经常被当作脚本语言用于处理系统管理任务和网络程序编写,然而它也非常适合完成各种高级任务。Python虚拟机本身几乎可以在所有的作业系统中运行。使用一些诸如py2exe、PyPy、PyInstaller之类的工具可以将Python源代码转换成可以脱离Python解释器运行的程序。
Python的官方解释器是CPython,该解释器用C语言编写,是一个由社区驱动的自由软件,目前由Python软件基金会管理。
Python支持命令式程序设计、面向对象程序设计、函数式编程、面向侧面的程序设计、泛型编程多种编程范式。
Python历史
Python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。之所以选中Python作为程序的名字,是因为他是BBC电视剧——蒙提·派森的飞行马戏团(Monty Python‘s Flying Circus)的爱好者。ABC是由吉多参加设计的一种教学语言。就吉多本人看来,ABC这种语言非常优美和强大,是专门为非专业程序员设计的。但是ABC语言并没有成功,究其原因,吉多认为是非开放造成的。吉多决心在Python中避免这一错误,并获取了非常好的效果,完美结合了C和其他一些语言。[5]
就这样,Python在吉多手中诞生了。实际上,第一个实现是在Mac机上。可以说,Python是从ABC发展起来,主要受到了Modula-3(另一种相当优美且强大的语言,为小型团体所设计的)的影响。并且结合了Unix shell和C的习惯。
目前吉多仍然是Python的主要开发者,决定整个Python语言的发展方向。Python社区经常称呼他是仁慈的独裁者。
Python 2.0于2000年10月16日发布,增加了实现完整的垃圾回收,并且支持Unicode。同时,整个开发过程更加透明,社区对开发进度的影响逐渐扩大。Python 3.0于2008年12月3日发布,此版不完全兼容之前的Python源代码。不过,很多新特性后来也被移植到旧的Python 2.6/2.7版本。
Python是完全面向对象的语言。函数、模块、数字、字符串都是对象。并且完全支持继承、重载、派生、多重继承,有益于增强源代码的复用性。Python支持重载运算符,因此Python也支持泛型设计。相对于Lisp这种传统的函数式编程语言,Python对函数式设计只提供了有限的支持。有两个标准库(functools, itertools)提供了与Haskell和Standard ML中类似的函数式程序设计工具。
虽然Python可能被粗略地分类为“脚本语言”(script language),但实际上一些大规模软件开发项目例如Zope、Mnet及BitTorrent,Google也广泛地使用它。Python的支持者较喜欢称它为一种高级动态编程语言,原因是“脚本语言”泛指仅作简单程序设计任务的语言,如shell script、VBScript等只能处理简单任务的编程语言,并不能与Python相提并论。
Python2到Python3发生了哪些变化
1.print语句没有了取而代之的是print()函数
下面是python2中的print写法
下面是python3中的print写法
2.raw_input()没有了取而代之的是input()
在python2中用户输入可以用raw_input()也可以用input()。
python3中只有input()
3.Pthon3中默认支持中文了
在python2中要想输出中文需要在代码中加上# -*- coding:utf-8 -*-
python3中还有一些模块名称发生了改变以及其他变化。这里不一一列出了
> # 开始Python之旅
跟所有程序一样第一个程序总是Hello.World。下面我们写一个hello world:
#创建一个helloworld.py的程序
#!/usr/bin/env python
# -*- coding: utf-8 -*-
print("Hello.World!")
#然后执行命令python helloworld.py