python学习笔记一

之前看过一本100多页的《python简明教程》,都是些非常简单的语法,现在到真正用的时候根本无从下手,所以,重新捧起一本《python学习手册》,1000多页,希望每天看一些,坚持10天内把重要的部分看完并做实践,每天坚持写点学习笔记来监督自己往前走。废话不说,今天花了两个小时就把第一部分看完,做一点简单的总结。

pytho的使用和分发完全是免费的,它是一种面向对象的语言,它的。它的类模块支持多态,操作符重载和多重继承等高级概念,并且以python特有的简洁的语法和类型,OOP十分易于使用。python内置了众多预编译并可移植的功能模块,这些功能模块叫做标准库(standard library)。python可以调用C和C++的库,可以被C和C++的程序调用,可以与java组件集成,可以和COM和.Net等框架进行通信,并且可以通过SOAP、XML-RPC和CORBA等接口与网络进行交互,所以,python绝不仅仅是一个独立的工具。

python是“脚本语言”吗

python是一门多种用途的编程语言,时常扮演脚本语言的角色。一般来说,python可以定义为面向对象的脚本语言,这个定义把面向对象的支持和面向脚本语言的角色融合在一起。很多时候,人们常常喜欢用“脚本”和不是语言来描述python的代码文件。

python的缺点

到目前为止,python唯一的缺点就是:在目前现有的实现方式下,与C和C++相比,python的执行速度还不够快。这里的原因是python在执行的过程中,先将源代码先编译成字节码,在通过python虚拟机将字节码解释出来,而C和C++是将源文件编译成底层可识别的二进制代码,所以,通常一些python程序将会比像C这样完全编译语言慢一些。但从整体上,不管是从开发效率还是执行效率,python要优于这些语言好几倍,据某个权威机构调查显示,python在全球的使用量上排第七。

谁在使用python?

除了个人使用上,python也被一些公司应用与商业产品的开发上,如:

YouTube视频分享服务大部分有Python写的。

流行的p2p文件分享系统BitTorrent是一个python程序。

此外,像EVE Online网络游戏,Maya 3D建模与动画系统等等都是用python来写,可见python的重要程度。

使用python可以做什么?

系统编程:python提供对操作系统服务的内置接口,其标准库绑定了POSIX以及其他的常规操作系统的工具:像环境变量,文件,套接字,管道,进程等。

用户图形接口:python内置了TKinter标准的面向对象接口Tk GUI API,使python可以生成可移植的本地观感的GUI。通过一些适当的库,你可以在python中使用其他的GUI工具包,如:通过PyQt使用Qt、通过PyGTK使用GTK,通过PyWin32使用MFC、通过IronPython使用.NET以及通过Jython使用Swing等。

Internet脚本:python提供了标准Internet模块,它使得python可以通过套接字广泛地和网络进行通信。

数据库编程:python提供了对所有主流关系数据库系统的接口,如:Sybase,Oracle,Informix,ODBC,MySQL,PostgreSQL,SQLite(Android)等。

数学计算和科学计算编程:通过和NumPy的结合,python可以做很多有关数值计算的工作,如:矩阵计算,和标准数学库结合执行更多的数学建模等。

此外,还有游戏,图像,人工智能,XML,机器人等方面的应用。

python如何运行程序?

python运行程序的机制有点类似于java,源程序通过解释在到执行,需要解释器和虚拟机,解释器是一种让其他程序运行起来的程序,是代码与机器的计算机硬件之间的软件逻辑层。python源文件(.py)通过解释器编译成字节码文件(.pyc),然后在通过python虚拟机编程可执行文件(.exe),如下图:

如何运行程序?

运行程序的方式总的来说有

1、命令行交互式运行,以windows为例,用任何编辑器编写python源文件(如script.py),而后找到源文件,用python script.py运行,如果需要重定向,则用:

python script.py > script.txt

2、直接双击文本文件script.py,需要在文件后加输入标志(如:input()),否则会出现一闪即消失的情况。

3、模块导入和重载

导入的方式有以下几种:

import script.py

缺点:只能运行一次,如果文件修改,只能重新运行,不方便,改进如下:

from imp import reload

reload(script)

imp是标准库模块,import是一个语句,而reload是一个函数,所以调用时加括号。

此外,说点from和import的联系:从一个文件来说,import是可以导入一个文件,而from可以指定导入一个文件中的属性(也可以看成是变量),一个新建的文件有很多默认的属性,如下,通过dir()查看一个只有一个自定义的属性(变量)x的文件script.py:

4、此外,还可以用exec运行模块文件:

exec(open('script.py').read())

5、通过IDLE GUI界面来运行python文件,IDLE是安装python自带的运行软件,其自带编辑文本界面,方便实用。

初此之外,还可以通过eclipse来运行,不过需要安装python插件。

介绍一个工具Shedskin,其可以将python代码变为C++代码。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏测试驿栈

Jmeter(九)_获取JDBC响应做接口关联

http://www.cnblogs.com/Zfc-Cjk/p/8295495.html

17240
来自专栏Spark学习技巧

Flink流式处理概念简介

一,抽象层次 Flink提供不同级别的抽象来开发流/批处理应用程序。 ? 1,stateful streaming 最底层。它通过Process Functio...

55760
来自专栏平凡文摘

怎样编写高质量的Java代码

17830
来自专栏java一日一条

怎样编写高质量的Java代码

怎样辨别一个项目代码写得好还是坏?优秀的代码和腐化的代码区别在哪里?怎么让自己写的代码既漂亮又有生命力?接下来将对代码质量的问题进行一些粗略的介绍。也请有过代码...

18310
来自专栏腾讯移动品质中心TMQ的专栏

基于 hook 和 gmock 开展单元测试

单元测试又称为模块测试,是针对程序模块(软件设计的最小单位)来进行正确性检验的测试工作。程序单元是应用的最小可测试部件。在过程化编程中,一个单元就是单个程序、函...

96620
来自专栏编程

一行 Python 代码实现并行

译者:caspar 译文:https://segmentfault.com/a/1190000000414339 原文:https://medium.com/b...

29290
来自专栏Spark学习技巧

深入理解Apache Flink核心技术

99430
来自专栏大闲人柴毛毛

使用Eclipse插件提高Java编码质量

代码质量概述 ? 怎样辨别一个项目代码写得好还是坏?优秀的代码和腐化的代码区别在哪里?怎么让自己写的代码既漂亮又有生命力?接下来将对代码质量的问题进行...

36970
来自专栏python小白到大牛

有轻功:用3行代码让Python数据处理脚本获得4倍提速

Python是一门非常适合处理数据和自动化完成重复性工作的编程语言,我们在用数据训练机器学习模型之前,通常都需要对数据进行预处理,而Python就非常适合完成这...

17930
来自专栏Timhbw博客

iOS面试中被面试官问到的问题答案(一)

2016-03-1016:30:14 发表评论 1,091℃热度 1.请你谈谈static和宏定义的区别。什么时候用static什么时候用宏定义。 让你声...

75380

扫码关注云+社区

领取腾讯云代金券