python study to 1 基础篇

第一章

PYthon 简介

Python的创始人为吉多.范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多.范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。之所以选中Python作为程序的名字,是因为他是BBC电视剧——蒙提.派森的飞行马戏团(Monty Python‘s Flying Circus)的爱好者。ABC是由吉多参加设计的一种教学语言。就吉多本人看来,ABC这种语言非常优美和强大,是专门为非专业程序员设计的。但是ABC语言并没有成功,究其原因,吉多认为是非开放造成的。吉多决心在Python中避免这一错误,并获取了非常好的效果,完美结合了C和其他一些语言。

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是完全面向对象的语言。函数、模块、数字、字符串都是对象。并且完全支持继承、重载、派生、多重继承,有益于增强源代码的复用性。Pytho持重载运算符,因此Python也支持泛型设计。相对于Lisp这种传统的函数式编程语言,Python对函数式设计只提供了有限的支持。有两个标准库(functools, itertools)提供了与Haskell和Standard ML中类似的函数式程序设计工具。虽然Python可能被粗略地分类为“脚本语言”(script language),但实际上一些大规模软件开发项目例如Zope、Mnet及BitTorrent,Google也广泛地使用它。Python的支持者较喜欢称它为一种高级动态编程语言,原因是“脚本语言”泛指仅作简单程序设计任务的语言,如shell script、VBScript等只能处理简单任务的编程语言,并不能与Python相提并论。

Python本身被设计为可扩充的。并非所有的特性和功能都集成到语言核心。Python提供了丰富的API和工具,以便程序员能够轻松地使用C、C++、Cython来编写扩充模块。Python编译器本身也可以被集成到其它需要脚本语言的程序内。因此,有很多人把Python作为一种“胶水语言”(glue language)使用。使用Python将其他语言编写的程序进行集成和封装。在Google内部的很多项目,例如Google App Engine使用C++编写性能要求极高的部分,然后用Python或Java/Go调用相应的模块。《Python技术手册》的作者马特利(Alex Martelli)说:“这很难讲,不过,2004年,Python已在Google内部使用,Google召募许多Python高手,但在这之前就已决定使用Python。他们的目的是尽量使用Python,在不得已时改用C++;在操控硬件的场合使用C++,在快速开发时候使用Python。”

PYthon应用范围

      Web应用程序:web应用程序、服务器后台应用程序。Python语言可以开发非常优秀的Web框架,例如:Django\Tornado\Flask\Pyramid等。网络服务器框架有著名的Twisted,异步通信eventlet。

GUI开发:Python提供了非常棒的图形界面化开发库文件,比较知名的两个库文件包括wxPython或者PyQt等GUI包来开发跨平台的桌面软件。

科学运算:随着 NumPy、SciPy、matplotlib、ETS 等众多程序库的开发,Python 越来越适合于做科学计算。与科学计算领域最流行的商业软件 MATLAB 相比,Python 是一门真正的通用程序设计语言,比 MATLAB 所采用的脚本语言的应用范围更广泛,有更多程序库的支持,适用于 Windows 和 Linux 等多种平台,完全免费并且开放源码。虽然 MATLAB 中的某些高级功能目前还无法替代,但是对于基础性、前瞻性的科研工作和应用系统的开发,完全可以用 Python 来完成。

系统管理工具:可以使用python 开发一些日常运维管理工具,例如:流程化自动管理工具、监控报表。使用python开发比较成熟的运维管理工具有SaltStack\Ansible,虚拟化管理工具OpenStack,备份工具Bacula。python是运维管理人员日常工作中助手的不二之选。

 

时间: 2024-11-02 14:50:50

python study to 1 基础篇的相关文章

python study to 4 基础篇

基础篇 内置函数 补充内置函数: 1.callable() #判断(函数)是否能够被执行或者被调用,此函数返回值为 Ture or False def f1(): pass print(callable(f1)) 2.chr() #把数字转换成ASCII字符 print(chr(65)) 3.ord() #把ASCII字符串转换成对应的数字 print (ord(",")) 4.randrange() #需要导入 import random模块,此函数产生随机数 I=Import ra

python study to 6 基础篇

递归 递归阶乘1*2*3*4...7案例 def func(num): if num == 1: return 1 return num * func(num-1) x =func(7) print(x) 反射 反射定义: 利用字符串的形式去对象(模块)中操作(寻找/检查/设置.删除)成员,叫做反射 反射:基于实例伪造web框架的路由系统.访问url然后定位到相应的函数上去. 反射使用到的方法: getattr ()  获取模块中的某个某个成员 hasattr()   判断某个成员是否在这个模块

python study to 8 基础篇

面向对象的三大特性--多态 多态(多种类型.多种形态):在面向对象编程中,类方法中所传的形式参数的各种基本数据类型. python面向对象编程中的多态特性中的类方法中的参数可以是python中的任意基本数据类型,在python多态特性中类方法参数的基本数据类型不作区分. 在python面向对象多态中,函数参数传递可以支持多个多种类型,不区分哪种类型数据 例如: def func(arg,kwargs): print(arg) func(123) func("",""

python study to 7 基础篇

模块 configparser模块 configparser用于处理特定格式的文件, 本质上来讲利用Open操作文件 例如以下格式文件: 1 [section1] 2 k1 = Ture 3 k2 = v2 4 k10 = 123 5 6 [section2] 7 k1 = v1 以下为configparser操作例子: 例1.获取所有节点 import configparser config = configparser.ConfigParser() config.read("file&quo

智普教育Python视频教程之入门基础篇,python笔记

智普教育Python视频教程之入门基础篇,python笔记 print id()内存地址 type()变量类型 windows命令行下edit命令 python数据类型不需要指定类型 定义hostname="www.google.com" 结果运行后总是告诉我NameError: name 'socket' is not defined 哪位帮我分析一下,怎么改才对 没用过socket,不过你试着在第一行加入 import socket C:\>notepad somefile.

【新手学Python】一、基础篇

由于以前处理数据用Matlab和C,最近要处理大量文本文件,用C写实在是太繁琐,鉴于Python的强大文本处理能力,以及其在Deep Learning上有着很大优势,本人打算从即日起学习Python,谨以此系列博客记录学习点滴.文中如有错误,还望大牛们指出! Section 1: 本文是第一篇,当然也是基础,有了编程基础的我们都知道,学习一门语言什么最重要?当然先搞清楚数据类型和数据结构,有了这些,你才能去谈面向对象,才能去设计程序. Python的数据类型比较简单:1.整数;2.长整数;3.浮

Python面试重点(基础篇)

Python面试重点(基础篇) 第一部分 必答题 简述列举了解的编程语言及语言间的区别? pythonjavacc++c#gophp----------------------------------------------------------------编程语言分为解释型和编译型: 解释型语言:   python 在编写代码的时候不需要编译,在执行的时候,想要用专用的解释器对代码进行编译,全部编译后,才能执行代码 编译型语言:   c c++   go 每写一行代码,解释器就会编译一行,然

Python学习之旅 —— 基础篇(四)内置函数、装饰器

本篇要点: 内置函数 装饰器 一.内置函数 # abs() :取绝对值 >>> res = abs(-10) >>> print(res) 10 # 0,None,"",{},[],() 布尔值都为空 # all(),any() 判断值的真假 # all() 所有为真才为真 p = all([0,1,2,3]) # 0为False,所有p 是False print(p) # any() 任意一个为真即为真 p = any((0,""

Python学习总结之一 -- 基础篇

Python学习第一篇 一:写在前面 啊,最近我的新博客一直都没有更新学习内容了,只是最近一直都在忙着寻找实习机会(或许这只是一个借口,真实原因是我太懒惰了,改改改!).终于今天又投递了几个新的实习职位之后幡然醒悟,我的执行力还是太弱了,我得更加有自律性更加坚持才行.所以今天,我把之前学习的Python基础知识总结一下. 二:认识Python 首先我们得清楚这个:Python这个名字是从Monty Python借鉴过来的,而不是源于大家所知道的大蟒蛇的意思.我们为什么要学习Python呢?就我而