Python基础,,1.初始Python


1.初始Python

1. pythonde 发展历史

技术图片

  自从20世纪90年代初Python语言诞生至今,它已被逐渐广泛应用于系统管理任务的处理和Web编程。

  Python的创始人为荷兰人吉多·范罗苏姆技术图片(Guido van Rossum)。1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,作为ABC 语言的一种继承。之所以选中Python(大蟒蛇的意思)作为该编程语言的名字,是取自英国20世纪70年代首播的电视喜剧《蒙提.派森的飞行马戏团》(Monty Python‘s Flying Circus)。

  ABC是由Guido参加设计的一种教学语言。就Guido本人看来,ABC 这种语言非常优美和强大,是专门为非专业程序员设计的。但是ABC语言并没有成功,究其原因,Guido 认为是其非开放造成的。Guido 决心在Python 中避免这一错误。同时,他还想实现在ABC 中闪现过但未曾实现的东西。就这样,Python在Guido手中诞生了。可以说,Python是从ABC发展起来,主要受到了Modula-3(另一种相当优美且强大的语言,为小型团体所设计的)的影响。并且结合了Unix shell和C的习惯。

Python技术图片已经成为最受欢迎的程序设计语言之一。自从2004年以后,python的使用率呈线性增长。Python 2于2000年10月16日发布,稳定版本是Python 2.7。Python 3于2008年12月3日发布,不完全兼容Python 2。技术图片2011年1月,它被TIOBE编程语言排行榜评为2010年度语言。技术图片

技术图片

技术图片

  由于Python语言的简洁性、易读性以及可扩展性,在国外用Python做科学计算的研究机构日益增多,一些知名大学已经采用Python来教授程序设计课程。例如卡耐基梅隆大学的编程基础、麻省理工学院的计算机科学及编程导论就使用Python语言讲授。众多开源的科学计算软件包都提供了Python的调用接口,例如著名的计算机视觉库OpenCV、三维可视化库VTK、医学图像处理库ITK。而Python专用的科学计算扩展库就更多了,例如如下3个十分经典的科学计算扩展库:NumPy、SciPy和matplotlib,它们分别为Python提供了快速数组处理、数值运算以及绘图功能。因此Python语言及其众多的扩展库所构成的开发环境十分适合工程技术、科研人员处理实验数据、制作图表,甚至开发科学计算应用程序。2018年3月,该语言作者在邮件列表上宣布Python 2.7将于2020年1月1日终止支持。用户如果想要在这个日期之后继续得到与Python 2.7有关的支持,则需要付费给商业供应商。技术图片

2.编程语言分类

- 编译型

将代码一次性全部编译成二进制,然后进行在执行

优点:执行效率高

缺点:开发效率低,不能跨平台

代表语言:c ,c++,java

- 解释型

逐行解释成二进制,逐行运行

优点:开发效率高,可以跨平台。

缺点:执行效率低

代表语言:python

3.Python语言有优缺点

优点

Python程序简单易懂,初学者入门容易。开发效率高,有强大的第三方库,可以在基础库的基础上再开发,降低开发周期。使用高级语言,编写程序无需考虑底层细节。可移植性。可扩展性,部分程序可用C或C++编写。可嵌入性,可以把Python嵌入C或C++程序中。

缺点

代码不能加密多线程支持差

4.Python2.x与3.x的区别

  1. 数据类型不同

py2       unicode        str py3        str           bytes# py2中的unicode与的py3的str相对应,py2与py3中的bytes相对应

  2.默认使用解释不用

py2      ascllpy3      utf-8

  3.输入与输出

# py2    print "Hello world"    raw_input("Hello world")# py3    print("Hello world")    input("Hello world")

  4.整除

py2   中只取整数py3    去全部

  5.长度

# py2    超过长度就会自动转换long    int# py3    int

  6. xrange和rangede 区别

# py2    range: 在内部会立即把所有的值都会创建    xrange: 在内部不会立即创建的所有的值,只有在循环时,边循环边创建# py3    range:在内部不会立即创建的所有的值,只有在循环时,边循环边创建

  7.模块与包

# py2    文件中必须有__init__.py# py3    文件中不需要,但是建议写

  8.字典

# py2:    keys: 列表        values: 列表    items: 列表# py3    keys: 迭代器,可以循环但不可以索引        values: 迭代器,可以循环但不可以索引    items: 迭代器,可以循环但不可以索引

  9.内置函数map/filter

py2:返回列表py3:返回迭代器,可以循环但不可以索引

  10.类中的新式类与经典类

在Python2.x中:# 如果在python2中这样定义,则称为新式类class Foo(object):         pass# 如果在python2中这样定义,则称为经典类class Foo:    pass在Python3.x中class Foo(object):         passclass Foo:    pass        # 在python3中这两个的写法一样,因为所有的类默认都会继承object,全部都是新式类,经典类只存在py2中5.变量

5.变量

变量;代指一些复杂过长的数据

注意事项:

变量中只能出现数字,字母,下换线

数字不能做开头

不能使用python的关键字

[‘and‘, ‘as‘, ‘assert‘, ‘break‘, ‘class‘, ‘continue‘, ‘def‘, ‘del‘, 
‘elif‘, ‘else‘, ‘except‘, ‘exec‘, ‘finally‘, ‘for‘, ‘from‘, ‘global‘,
‘if‘, ‘import‘, ‘in‘, ‘is‘, ‘lambda‘, ‘not‘, ‘or‘, ‘pass‘, ‘print‘,
‘raise‘, ‘return‘, ‘try‘, ‘while‘, ‘with‘, ‘yield‘]

变量要具有描述性

不能使用中文

不能过长

推荐

驼峰体

下划线

待续

Python基础

评论关闭