Python程序语言

Python(蟒蛇)是一种具有动态道义和面向对鱼的狂源程序设让语言。它可以在Windows.Linux.Android等系统中使用,可以实理Pvthan与C/CJavsNer等开发平台的混合编程。Python语言最大的特点是语法的简洁性和资源的丰富性。几乎所有Linux发行版都内置了Python解释器,YouTube、豆瓣、知乎等大型网站也是Python编写的。Pvthon语言日前主要有2.x和3.x两个版本,这两个版本互不重容,本案例采Python 3.x版

▶1.Python语言的特征

(1)简单易学。Python是一种动态语言(也称为脚本语言,解释性语言),它的特点是无须声明数据类型,可以在程序中临时命名变量和赋值,程序运行时才进行数据类型的检查。Python是一种代表简单主义思想的编程语言,为了让代码具备高度的可读性,Python拒绝花哨的语法,选择没有或者很少有歧义的语法。Python不再有指针等复杂的数据类型,而且简化了面向对象的实现方法。有人估计,在功能相同的情况下,Python程序的代码行只有Java代码行的五分之一左右。
(2)可扩展性好。Python提供了丰富的API(应用程序接口)和工具,以便程序员能够轻松地使用C/C++、Java来编写扩充模块。如果一段关键代码需要运行得更快(如3D游戏中的图形渲染模块)或者是企业希望不公开某些算法(如加密算法),这部分程序可用C/C++编写,再封装为Python可以调用的模块,然后在Python程序中调用它们。Python具有把其他语言制作的模块连接在一起的功能,因此人们将Python称为“胶水语言”。
(3)丰富的软件包。Python内置软件包(标准库)很庞大,它包括图形处理(Tkinter)、正则文本处理(re)、数据库(支持SQL、NoSQL和SQLite)、网络编程(sockets)、黑客编程(hack)、系统编程(os)等。除内置包外,Python还有非常丰富和高质量的第三方软件包(扩展库),如NumPy(科学计算)、matplotlib(2D图形)、PyQt(桌面GUI软件)、PIL(数字图像处理)、Django(Web开发)、Pycrypto(加密解密)、Pygame(游戏)、xlrd(Excel读写)、jieba(中文分词)、Anaconda(综合软件,含720多个软件模块)等。
(4)强制语句缩进。Python强制用空格符作为程序块缩进,空格键和Tab键的混用容易导致编译错误。Python语言这种强制语句缩进的规定曾经引起过广泛争议,C语言诞生后,一直用一对《}(花括号)来规定程序块的边界,这种语法含义与字符排列方式分离的方法,曾经认为是程序设计语言的进步,因而有人抨击Python在走回头路。
(5)运行效率低。Python是解释语言,代码执行时需要一行一行地翻译成机器码,这个过程很慢,因此不适宜做高性能应用。
(6)开源。Python程序代码不能加密,发布软件就意味着开放源代码。

▶2.Python的解释器

(1)Cpython(C语言开发)是应用最广泛的官方Python解释器,安装好Python软件后,就获得了一个官方版本的解释器。Cpython的兼容性好,但是运行效率低。
(2)PyPy(用Python实现Python)解释器采用JIT(即时编译)技术,使Python运行速度提高了近十倍。PyPy解释器对代码进行动态编译,这大大节省了系统资源,显著提高了代码运行速度;缺点是需要附带链接库,这容易造成兼容性问题。
(3)Jython是Java平台的Python解释器,它把代码编译成Java字节码执行。

(4)IronPython是.Net平台的Python解释器,它把代码编译成.Net字节码执行。

(5)QPython是Android上的Python脚本引擎,它整合了Python解释器、控制台、编辑器和SL4A(安卓脚本层),可以在Android设备上运行Python语言开发的程序。

▶3.Python的文件类型

Python的文件类型分为源代码、字节代码和优化代码,它们都可以运行

Python源代码以.py为扩展名,它们由Python解释器(虚拟机)负责执行

执行Python代码时,如果导入了其他的.py文件,那么,执行过程中会自动生成一个与其同名的.pyc文件,该文件就是Python解释器编译之后产生的字节码。

经过优化的Python源代码以.pyo为后缀,它们也可以由Python解释器执行。

▶4.Python的数据类型

Python中变量的数据类型不需要声明,变量的赋值操作即变量声明和定义过程,Python用等号(=)给变量赋值。如果变量没有赋值,Python则认为该变量不存在。

数据类型        说明        案例        描述

str        字符        由字符组成的不可修改元素        Wikipedia'、"提示信息"        

bytes        字节        由字节组成的不可修改元素        b'Some ASCI        

list        列表        包含多种类型的可修改的元素,类似于数组        [4.0,'string',True]

tuple        元组        包含多种类型的不可修改的元素,类似于记录        (4.0,'string',True)

set        集合        一个无序且不重复的元素集合         {4.0,'string',True}       

dict        字典        一个由“键值对”组成的可修改的元素        {'key1';1.0,3:False}

int        整型        精度与系统相关        42

float        浮点        浮点数,精度与系统相关        3.1415927

complex        复数        复数        3+2.7j

bool        布尔        逻辑只有两个值:真、假        True、False

说明:在Python 3.x版本中,字符串采用Unicode字符集。

▶5.Python程序的组成

Python程序由包(package)、模块(module)和函数组成。

(1)包是一系列模块组成的集合(也称为库).句的作用是实现程序的重用。Python 社区提供了大量第三方软件包(也称为依赖包).第三方句的使用方法与标准包类似。因特网上已有成千上万个Python软件包,单是PvPi网站就有超过10万多个软件包列表。这些软件包的功能覆盖科学计算、统计分析、Web开发、数字图像处理、数据库管理、网络编程、大数据处理、人工智能、游戏设计等领域。用户也可以自定义包。
(2)Python程序模块由代码、函数和类组成,每个.pv文件就是一个模块。模块把一组相关的函数或代码组织到一个文件中,模块也称为脚本文件或源文件。
(3)函数是功能单一和可重复使用的代码段。Pvthon提供了许多内建函数(如print()),程序员也可以自定义函数。在面向对象编程时,函数也称为方法。

比较内容        Python语言        C语言

数据类型声明        无须声明即可使用        先声明,后使用

代码一行多句        不推荐,一行一句        可一行多句,用;(分号)分隔

代码最大行宽        不超过79个字符,推荐用反斜杠(\)续行        无限制,回车续行

程序结构区分        必须用缩进方式区分程序块        用{}(花括号)区分程序块

语句缩进方法        推荐4个空格,不推荐用Tab键缩进        空格数无限制,允许Tab键缩进

程序注释        #加1个空格或"注释"        /**/或//

主函数min()        可有,不是必需的        必须有而且只能有1个

字符串表示        单引号、双引号、三引号均可        ”(双引号)

自增和自减运算        不支持,但允许:i+=1形式        支持i++和i--

默认字符编码        UTF-8(Python 3.x)        ANSI

▶6,Python语言程序案例

例:创建图形用户界面的hello.py程序。

# - * - coding:utf-8 - * -

import sys,tkinter        #导人标准包:sys、tkinter

root =tkinter.Tk()        #创建主窗口

root,title('HelloWorld')        #窗口标题名称

root,minsize(200,100)        #设置窗口大小

#创建标签内容

tkinter,Label(root,text='Hello World!你好,世界').pack()

#创建按钮,并把命令绑定到退出按钮
tkinter.Button(root,text='退出',command=sys.exit).pack()

root.mainloop()        #启动主循环


例:创建网络爬虫程序,爬取百度首页。
# - * - coding:utf-8 - * -

import urllib.request        #导人urllib包中的request模块
url='http://www.baidu.com        #网站URL赋值
get=urllib.request.urlopen(url).read()        #爬取网站内容

print(get)        #显示爬取网页内容

例:格式化字符串。我们经常会遇到:'亲爱的xxx您好!您xx月的话费是xx,余额是xx'之类的字符串,其中xxx的内容是经常变化的。所以,需要一种简便的格式化字符串的方式。Python格式化字符串的方式用%实现,如下所示。
>>>'您好,%s,您有%s美元到账了.’ %('小明',10000.68)        #>>>为提示符,%为占位符
'您好,小明,您有10000.68美元到账了. ’       #输出
在字符串内部,%是占位符,有几个%,后面就需要几个变量或者值,顺序对应。常见的占位符有:%d=整数,%f=浮点数,%s=字符串,%x=十六进制整数。如果不太确定用什么占位符,%s永远起作用,它会把任何数据类型转换为字符串。

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-14 13:04:01       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-14 13:04:01       106 阅读
  3. 在Django里面运行非项目文件

    2023-12-14 13:04:01       87 阅读
  4. Python语言-面向对象

    2023-12-14 13:04:01       96 阅读

热门阅读

  1. SVG 生成 Vector 资源文件批量及编辑预览工具

    2023-12-14 13:04:01       56 阅读
  2. Springboot整合Redis实现消息发布订阅

    2023-12-14 13:04:01       59 阅读
  3. PHP中如何连接数据库并执行查询?

    2023-12-14 13:04:01       51 阅读
  4. 利用tf-idf对特征进行提取

    2023-12-14 13:04:01       56 阅读
  5. MFC程序中CStdioFile文件的读写

    2023-12-14 13:04:01       44 阅读
  6. Redis简易延时队列

    2023-12-14 13:04:01       65 阅读
  7. AI智能外呼系统销售特别注意的信息点

    2023-12-14 13:04:01       54 阅读
  8. Express中使用Swagger

    2023-12-14 13:04:01       66 阅读
  9. simulink自定义用户库、模块封装及案例测试

    2023-12-14 13:04:01       62 阅读