python基础教程上

论坛 期权论坛 期权     
重点在哪儿   2019-7-7 23:20   2280   0
Python 简介Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。
Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。
  • Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。
  • Python 是交互式语言: 这意味着,您可以在一个Python提示符,直接互动执行写你的程序。
  • Python 是面向对象语言: 这意味着Python支持面向对象的风格或代码封装在对象的编程技术。
  • Python 是初学者的语言:Python 对初级程序员而言,是一种伟大的语言,它支持广泛的应用程序开发,从简单的文字处理到 WWW 浏览器再到游戏。
[h1]Python 发展历史[/h1]Python 是由 Guido van Rossum 在八十年代末和九十年代初,在荷兰国家数学和计算机科学研究所设计出来的。
Python 本身也是由诸多其他语言发展而来的,这包括 ABC、Modula-3、C、C++、Algol-68、SmallTalk、Unix shell 和其他的脚本语言等等。
像 Perl 语言一样,Python 源代码同样遵循 GPL(GNU General Public License)协议。
现在 Python 是由一个核心开发团队在维护,Guido van Rossum 仍然占据着至关重要的作用,指导其进展。
[h1]Python 特点[/h1]
  • 1.易于学习:Python有相对较少的关键字,结构简单,和一个明确定义的语法,学习起来更加简单。
  • 2.易于阅读:Python代码定义的更清晰。
  • 3.易于维护:Python的成功在于它的源代码是相当容易维护的。
  • 4.一个广泛的标准库:Python的最大的优势之一是丰富的库,跨平台的,在UNIX,Windows和Macintosh兼容很好。
  • 5.互动模式:互动模式的支持,您可以从终端输入并获得结果的语言,互动的测试和调试代码片断。
  • 6.便携式:Python可以运行在多种硬件平台和所有平台上都具有相同的接口。
  • 7.可扩展:可以添加低层次的模块到Python解释器。这些模块使程序员可以添加或定制自己的工具,更有效。
  • 8.数据库:Python提供所有主要的商业数据库的接口。
  • 9.GUI编程:Python支持GUI可以创建和移植到许多系统调用。
  • 10.可扩展性:相比 shell 脚本,Python 提供了一个更好的结构,且支持大型程序。
Python 环境搭建本章节我们将向大家介绍如何在本地搭建Python开发环境。
Python可应用于多平台包括 Linux 和 Mac OS X。
你可以通过终端窗口输入 "python" 命令来查看本地是否已经安装Python以及Python的安装版本。
  • Unix (Solaris, Linux, FreeBSD, AIX, HP/UX, SunOS, IRIX, 等等。)
  • Win 9x/NT/2000
  • Macintosh (Intel, PPC, 68K)
  • OS/2
  • DOS (多个DOS版本)
  • PalmOS
  • Nokia 移动手机
  • Windows CE
  • Acorn/RISC OS
  • BeOS
  • Amiga
  • VMS/OpenVMS
  • QNX
  • VxWorks
  • Psion
  • Python 同样可以移植到 Java 和 .NET 虚拟机上。
[h1]Python下载[/h1]Python最新源码,二进制文档,新闻资讯等可以在Python的官网查看到:
Python官网:http://www.python.org/
你可以在一下链接中下载Python的文档,你可以下载 HTML、PDF 和 PostScript 等格式的文档。
Python文档下载地址:www.python.org/doc/
[h1]Python安装[/h1]Python已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。
您需要下载适用于您使用平台的二进制代码,然后安装Python。
如果您平台的二进制代码是不可用的,你需要使用C编译器手动编译源代码。
编译的源代码,功能上有更多的选择性, 为python安装提供了更多的灵活性。
以下为不同平台上安装Python的方法:
[h2]Unix & Linux 平台安装 Python:[/h2]以下为在Unix & Linux 平台上安装 Python 的简单步骤:
  • 打开WEB浏览器访问http://www.python.org/download/
  • 选择适用于Unix/Linux的源码压缩包。
  • 下载及解压压缩包。
  • 如果你需要自定义一些选项修改Modules/Setup
  • 执行 ./configure 脚本
  • make
  • make install
执行以上操作后,Python会安装在 /usr/local/bin 目录中,Python库安装在/usr/local/lib/pythonXX,XX为你使用的Python的版本号。
[h2]Window 平台安装 Python:[/h2]以下为在 Window 平台上安装 Python 的简单步骤:
  • 打开WEB浏览器访问http://www.python.org/download/
  • 在下载列表中选择Window平台安装包,包格式为:python-XYZ.msi 文件 , XYZ 为你要安装的版本号。
  • 要使用安装程序 python-XYZ.msi, Windows系统必须支持Microsoft Installer 2.0搭配使用。只要保存安装文件到本地计算机,然后运行它,看看你的机器支持MSI。Windows XP和更高版本已经有MSI,很多老机器也可以安装MSI。
  • 下载后,双击下载包,进入Python安装向导,安装非常简单,你只需要使用默认的设置一直点击"下一步"直到安装完成即可。
[h2]MAC 平台安装 Python:[/h2]最近的Macs系统都自带有Python环境,但是自带的Python版本为旧版本,你可以通过链接http://www.python.org/download/mac/ 查看MAC上Python的新版功能介绍。
MAC上完整的Python安装教程你可以查看:http://homepages.cwi.nl/~jack/macpython/index.html
[h1]环境变量配置[/h1]程序和可执行文件可以在许多目录,而这些路径很可能不在操作系统提供可执行文件的搜索路径中。
path(路径)存储在环境变量中,这是由操作系统维护的一个命名的字符串。这些变量包含可用的命令行解释器和其他程序的信息。
Unix或Windows中路径变量为PATH(UNIX区分大小写,Windows不区分大小写)。
在Mac OS中,安装程序过程中改变了python的安装路径。如果你需要在其他目录引用Python,你必须在path中添加Python目录。
[h2]在 Unix/Linux 设置环境变量[/h2]
  • 在 csh shell: 输入
    setenv PATH "$PATH:/usr/local/bin/python", 按下"Enter"。
  • 在 bash shell (Linux): 输入
    export PATH="$PATH:/usr/local/bin/python",按下"Enter"。
  • 在 sh 或者 ksh shell: 输入
    PATH="$PATH:/usr/local/bin/python", 按下"Enter"。
注意: /usr/local/bin/python 是Python的安装目录。
[h2]在 Windows 设置环境变量[/h2]在环境变量中添加Python目录:
  • 在命令提示框中(cmd) : 输入
    path %path%;C:\Python, 按下"Enter"。
注意: C:\Python 是Python的安装目录。
[h1]Python 环境变量[/h1]下面几个重要的环境变量,它应用于Python:
变量名描述PYTHONPATHPYTHONPATH是Python搜索路径,默认我们import的模块都会从PYTHONPATH里面寻找。PYTHONSTARTUPPython启动后,先寻找PYTHONSTARTUP环境变量,然后执行此文件中变量指定的执行代码。PYTHONCASEOK加入PYTHONCASEOK的环境变量, 就会使python导入模块的时候不区分大小写.PYTHONHOME另一种模块搜索路径。它通常内嵌于的PYTHONSTARTUP或PYTHONPATH目录中,使得两个模块库更容易切换。[h1]运行Python[/h1]有三种方式可以运行Python:
[h2]1、交互式解释器:[/h2]你可以通过命令行窗口进入python并开在交互式解释器中开始编写Python代码。
你可以在Unix,DOS或任何其他提供了命令行或者shell的系统进行python编码工作。
$python # Unix/Linux
或者
python% # Unix/Linux
或者
C:>python # Windows/DOS
以下为Python命令行参数:
选项描述-d在解析时显示调试信息-O生成优化代码 ( .pyo 文件 )-S启动时不引入查找Python路径的位置-v输出Python版本号-X从 1.6版本之后基于内建的异常(仅仅用于字符串)已过时。-c cmd执行 Python 脚本,并将运行结果作为 cmd 字符串。file在给定的python文件执行python脚本。[h2]2、命令行脚本[/h2]在你的应用程序中通过引入解释器可以在命令行中执行Python脚本,如下所示:
$python script.py # Unix/Linux
或者
python% script.py # Unix/Linux
或者
C:>python script.py # Windows/DOS
注意:在执行脚本时,请检查脚本是否有可执行权限。
[h2]3、集成开发环境(IDE:Integrated Development Environment)[/h2]您可以使用图形用户界面(GUI)环境来编写及运行Python代码。以下推荐各个平台上使用的IDE:
  • Unix: IDLE 是 UNIX 上最早的 Python IDE 。
  • Windows: PythonWin 是一个 Python 集成开发环境,在许多方面都比 IDE 优秀
  • Macintosh: Python 的 Mac 可以使用 IDLE IDE,你可以在网站上下载对应MAC的IDLE 。
继续下一章之前,请确保您的环境已搭建成功。如果你不能够建立正确的环境,那么你就可以从您的系统管理员的帮助。
在以后的章节中给出的例子已在 Python2.7.6 版本测试通过。

Python 中文编码前面章节中我们已经学会了如何用 Python 输出 "Hello, World!",英文没有问题,但是如果你输出中文字符"你好,世界"就有可能会碰到中文编码问题。
Python 文件中如果未指定编码,在执行过程会出现报错:
#!/usr/bin/pythonprint "你好,世界";以上程序执行输出结果为:
  File "test.py", line 2SyntaxError: Non-ASCII character \'\xe4\' in file test.py on line 2, but no encoding declared; see http://www.python.org/peps/pep-0263.html for detailsPython中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字,所以在读取中文时会报错。
解决方法为只要在文件开头加入 # -- coding: UTF-8 -- 或者 #coding=utf-8 就行了。
[h1]实例(Python 2.0+)[/h1]#!/usr/bin/python# -*- coding: UTF-8 -*-print "你好,世界";运行实例
输出结果为:
你好,世界所以如果大家再学习过程中,代码中包含中文,就需要在头部指定编码。
注意:Python3.X 源码文件默认使用utf-8编码,所以可以正常解析中文,无需指定 UTF-8 编码。

Python 基础语法Python语言与Perl,C和Java等语言有许多相似之处。但是,也存在一些差异。
在本章中我们将来学习Python的基础语法,让你快速学会Python编程。
[h1]第一个Python程序[/h1][h2]交互式编程[/h2]交互式编程不需要创建脚本文件,是通过 Python 解释器的交互模式进来编写代码。
linux上你只需要在命令行中输入 Python 命令即可启动交互式编程,提示窗口如下:
$ pythonPython 2.7.6 (default, Sep  9 2014, 15:04:36)[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwinType "help", "copyright", "credits" or "license" for more information.>>>Window上在安装Python时已经已经安装了默认的交互式编程客户端,提示窗口如下:


在 python 提示符中输入以下文本信息,然后按 Enter 键查看运行效果:
>>> print "Hello, Python!";在 Python 2.7.6 版本中,以上事例输出结果如下:
Hello, Python!如果您运行的是新版本的Python,那么你就需要在print语句中使用括号如:
>>>  print ("Hello, Python!");[h2]脚本式编程[/h2]通过脚本参数调用解释器开始执行脚本,直到脚本执行完毕。当脚本执行完成后,解释器不再有效。
让我们写一个简单的Python脚本程序。所有Python文件将以.py为扩展名。将以下的源代码拷贝至test.py文件中。
print "Hello, Python!";这里,假设你已经设置了Python解释器PATH变量。使用以下命令运行程序:
$ python test.py输出结果:
Hello, Python!让我们尝试另一种方式来执行Python脚本。修改test.py文件,如下所示:
#!/usr/bin/pythonprint "Hello, Python!";这里,假定您的Python解释器在/usr/bin目录中,使用以下命令执行脚本:
$ chmod +x test.py     # 脚本文件添加可执行权限$./test.py输出结果:
Hello, Python![h1]Python 标识符[/h1]在python里,标识符有字母、数字、下划线组成。
在python中,所有标识符可以包括英文、数字以及下划线(_),但不能以数字开头。
python中的标识符是区分大小写的。
以下划线开头的标识符是有特殊意义的。以单下划线开头(_foo)的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用"from xxx import *"而导入;
以双下划线开头的(foo)代表类的私有成员;以双下划线开头和结尾的(foo)代表python里特殊方法专用的标识,如__init()代表类的构造函数。
[h1]Python保留字符[/h1]下面的列表显示了在Python中的保留字。这些保留字不能用作常数或变数,或任何其他标识符名称。
所有Python的关键字只包含小写字母。
andexecnotassertfinallyorbreakforpassclassfromprintcontinueglobalraisedefifreturndelimporttryelifinwhileelseiswithexceptlambdayield[h1]行和缩进[/h1]学习Python与其他语言最大的区别就是,Python的代码块不使用大括号({})来控制类,函数以及其他逻辑判断。python最具特色的就是用缩进来写模块。
缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。如下所示:
if True:    print "True"else:  print "False"以下代码将会执行错误:
#!/usr/bin/python# -*- coding: UTF-8 -*-# 文件名:test.py if True:    print "Answer"    print "True"else:    print "Answer"    # 没有严格缩进,在执行时保持  print "False"$ python test.py    File "test.py", line 5    if True:    ^IndentationError: unexpected indentIndentationError: unexpected indent 错误是python编译器是在告诉你"Hi,老兄,你的文件里格式不对了,可能是tab和空格没对齐的问题",所有python对格式要求非常严格。
如果是 IndentationError: unindent does not match any outer indentation level错误表明,你使用的缩进方式不一致,有的是 tab 键缩进,有的是空格缩进,改为一致即可。
因此,在Python的代码块中必须使用相同数目的行首缩进空格数。
建议你在每个缩进层次使用 单个制表符 或 两个空格 或 四个空格 , 切记不能混用
[h1]多行语句[/h1]Python语句中一般以新行作为为语句的结束符。
但是我们可以使用斜杠( \)将一行的语句分为多行显示,如下所示:
total = item_one + \        item_two + \        item_three语句中包含[], {} 或 () 括号就不需要使用多行连接符。如下实例:
days = [\'Monday\', \'Tuesday\', \'Wednesday\',        \'Thursday\', \'Friday\'][h1]Python 引号[/h1]Python 接收单引号(\' ),双引号(" ),三引号(\'\'\' """) 来表示字符串,引号的开始与结束必须的相同类型的。
其中三引号可以由多行组成,编写多行文本的快捷语法,常用语文档字符串,在文件的特定地点,被当做注释。
word = \'word\'sentence = "这是一个句子。"paragraph = """这是一个段落。包含了多个语句"""[h1]Python注释[/h1]python中单行注释采用 # 开头。
#!/usr/bin/python# -*- coding: UTF-8 -*-# 文件名:test.py# 第一个注释print "Hello, Python!";  # 第二个注释输出结果:
Hello, Python!注释可以在语句或表达式行末:
name = "Madisetti" # 这是一个注释python 中多行注释使用三个单引号(\'\'\')或三个单引号(""")。
#!/usr/bin/python# -*- coding: UTF-8 -*-# 文件名:test.py\'\'\'这是多行注释,使用单引号。这是多行注释,使用单引号。这是多行注释,使用单引号。\'\'\'"""这是多行注释,使用双引号。这是多行注释,使用双引号。这是多行注释,使用双引号。"""[h1]Python空行[/h1]函数之间或类的方法之间用空行分隔,表示一段新的代码的开始。类和函数入口之间也用一行空行分隔,以突出函数入口的开始。
空行与代码缩进不同,空行并不是Python语法的一部分。书写时不插入空行,Python解释器运行也不会出错。但是空行的作用在于分隔两段不同功能或含义的代码,便于日后代码的维护或重构。
记住:空行也是程序代码的一部分。
[h1]等待用户输入[/h1]下面的程序在按回车键后就会等待用户输入:
#!/usr/bin/pythonraw_input("\n\nPress the enter key to exit.")以上代码中 ,"\n\n"在结果输出前会输出两个新的空行。一旦用户按下键时,程序将退出。
[h1]同一行显示多条语句[/h1]Python可以在同一行中使用多条语句,语句之间使用分号(;)分割,以下是一个简单的实例:
import sys; x = \'foo\'; sys.stdout.write(x + \'\n\')[h1]多个语句构成代码组[/h1]缩进相同的一组语句构成一个代码块,我们称之代码组。
像if、while、def和class这样的复合语句,首行以关键字开始,以冒号( : )结束,该行之后的一行或多行代码构成代码组。
我们将首行及后面的代码组称为一个子句(clause)。
如下实例:
if expression :   suiteelif expression :     suite  else :     suite[h1]命令行参数[/h1]很多程序可以执行一些操作来查看一些基本信,Python可以使用-h参数查看各参数帮助信息:
$ python -husage: python [option] ... [-c cmd | -m mod | file | -] [arg] ...Options and arguments (and corresponding environment variables):-c cmd : program passed in as string (terminates option list)-d     : debug output from parser (also PYTHONDEBUG=x)-E     : ignore environment variables (such as PYTHONPATH)-h     : print this help message and exit[ etc. ]Python 变量类型变量存储在内存中的值。这就意味着在创建变量时会在内存中开辟一个空间。
基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。
因此,变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符。
[h1]变量赋值[/h1]Python中的变量不需要声明,变量的赋值操作既是变量声明和定义的过程。
每个变量在内存中创建,都包括变量的标识,名称和数据这些信息。
每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。
等号(=)用来给变量赋值。
等号(=)运算符左边是一个变量名,等号(=)运算符右边是存储在变量中的值。例如:
#!/usr/bin/python# -*- coding: UTF-8 -*-counter = 100 # 赋值整型变量miles = 1000.0 # 浮点型name = "John" # 字符串print counterprint milesprint name运行实例  下载
以上实例中,100,1000.0和"John"分别赋值给counter,miles,name变量。
执行以上程序会输出如下结果:
1001000.0John[h1]多个变量赋值[/h1]Python允许你同时为多个变量赋值。例如:
a = b = c = 1
以上实例,创建一个整型对象,值为1,三个变量被分配到相同的内存空间上。
您也可以为多个对象指定多个变量。例如:
a, b, c = 1, 2, "john"
以上实例,两个整型对象1和2的分配给变量a和b,字符串对象"john"分配给变量c。
[h1]标准数据类型[/h1]在内存中存储的数据可以有多种类型。
例如,person.s年龄作为一个数值存储和他或她的地址是字母数字字符存储。
Python有一些标准类型用于定义操作上,他们和为他们每个人的存储方法可能。
Python有五个标准的数据类型:
  • Numbers(数字)
  • String(字符串)
  • List(列表)
  • Tuple(元组)
  • Dictionary(字典)
[h1]Python数字[/h1]数字数据类型用于存储数值。
他们是不可改变的数据类型,这意味着改变数字数据类型会分配一个新的对象。
当你指定一个值时,Number对象就会被创建:
var1 = 1var2 = 10
您也可以使用del语句删除一些对象引用。
del语句的语法是:
del var1[,var2[,var3[....,varN]]]]
您可以通过使用del语句删除单个或多个对象。例如:
del vardel var_a, var_b
Python支持四种不同的数值类型:
  • int(有符号整型)
  • long(长整型[也可以代表八进制和十六进制])
  • float(浮点型)
  • complex(复数)
实例
一些数值类型的实例:
intlongfloatcomplex1051924361L0.03.14j100-0x19323L15.2045.j-7860122L-21.99.322e-36j0800xDEFABCECBDAECBFBAEl32.3+e18.876j-0490535633629843L-90.-.6545+0J-0x260-052318172735L-32.54e1003e+26J0x69-4721885298529L70.2-E124.53e-7j
  • 长整型也可以使用小写"L",但是还是建议您使用大写"L",避免与数字"1"混淆。Python使用"L"来显示长整型。
  • Python还支持复数,复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型
[h1]Python字符串[/h1]字符串或串(String)是由数字、字母、下划线组成的一串字符。
一般记为 :
s="a1a2···an"(n>=0)
它是编程语言中表示文本的数据类型。
python的字串列表有2种取值顺序:
  • 从左到右索引默认0开始的,最大范围是字符串长度少1
  • 从右到左索引默认-1开始的,最大范围是字符串开头
如果你的实要取得一段子串的话,可以用到变量[头下标:尾下标],就可以截取相应的字符串,其中下标是从0开始算起,可以是正数或负数,下标可以为空表示取到头或尾。
比如:
s = \'ilovepython\'
s[1:5]的结果是love。
当使用以冒号分隔的字符串,python返回一个新的对象,结果包含了以这对偏移标识的连续的内容,左边的开始是包含了下边界。
上面的结果包含了s[1]的值l,而取到的最大范围不包括上边界,就是s[5]的值p。
加号(+)是字符串连接运算符,星号(*)是重复操作。如下实例:
#!/usr/bin/python# -*- coding: UTF-8 -*-str = \'Hello World!\'print str # 输出完整字符串print str[0] # 输出字符串中的第一个字符print str[2:5] # 输出字符串中第三个至第五个之间的字符串print str[2:] # 输出从第三个字符开始的字符串print str * 2 # 输出字符串两次print str + "TEST" # 输出连接的字符串以上实例输出结果:
Hello World!Hllollo World!Hello World!Hello World!Hello World!TEST
[h1]Python列表[/h1]List(列表) 是 Python 中使用最频繁的数据类型。
列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(所谓嵌套)。
列表用[ ]标识。是python最通用的复合数据类型。看这段代码就明白。
列表中的值得分割也可以用到变量[头下标:尾下标],就可以截取相应的列表,从左到右索引默认0开始的,从右到左索引默认-1开始,下标可以为空表示取到头或尾。
加号(+)是列表连接运算符,星号(*)是重复操作。如下实例:
#!/usr/bin/python# -*- coding: UTF-8 -*-list = [ \'abcd\', 786 , 2.23, \'john\', 70.2 ]tinylist = [123, \'john\']print list # 输出完整列表print list[0] # 输出列表的第一个元素print list[1:3] # 输出第二个至第三个的元素print list[2:] # 输出从第三个开始至列表末尾的所有元素print tinylist * 2 # 输出列表两次print list + tinylist # 打印组合的列表以上实例输出结果:
[\'abcd\', 786, 2.23, \'john\', 70.2]abcd
[786, 2.23]
[2.23, \'john\', 70.2]
[123, \'john\', 123, \'john\']
[\'abcd\', 786, 2.23, \'john\', 70.2, 123, \'john\']
[h1]Python元组[/h1]元组是另一个数据类型,类似于List(列表)。
元组用"()"标识。内部元素用逗号隔开。但是元素不能二次赋值,相当于只读列表。
#!/usr/bin/python# -*- coding: UTF-8 -*-tuple = ( \'abcd\', 786 , 2.23, \'john\', 70.2 )tinytuple = (123, \'john\')print tuple # 输出完整元组print tuple[0] # 输出元组的第一个元素print tuple[1:3] # 输出第二个至第三个的元素print tuple[2:] # 输出从第三个开始至列表末尾的所有元素print tinytuple * 2 # 输出元组两次print tuple + tinytuple # 打印组合的元组以上实例输出结果:
(\'abcd\', 786, 2.23, \'john\', 70.2)abcd(786, 2.23)(2.23, \'john\', 70.2)(123, \'john\', 123, \'john\')(\'abcd\', 786, 2.23, \'john\', 70.2, 123, \'john\')
以下是元组无效的,因为元组是不允许更新的。而列表是允许更新的:
#!/usr/bin/python# -*- coding: UTF-8 -*-tuple = ( \'abcd\', 786 , 2.23, \'john\', 70.2 )list = [ \'abcd\', 786 , 2.23, \'john\', 70.2 ]tuple[2] = 1000 # 元组中是非法应用list[2] = 1000 # 列表中是合法应用[h1]Python元字典[/h1]字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象结合,字典是无序的对象集合。
两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
字典用"{ }"标识。字典由索引(key)和它对应的值value组成。
#!/usr/bin/python# -*- coding: UTF-8 -*-dict = {}dict[\'one\'] = "This is one"dict[2] = "This is two"tinydict = {\'name\': \'john\',\'code\':6734, \'dept\': \'sales\'}print dict[\'one\'] # 输出键为\'one\' 的值print dict[2] # 输出键为 2 的值print tinydict # 输出完整的字典print tinydict.keys() # 输出所有键print tinydict.values() # 输出所有值输出结果为:
This is one This is two {\'dept\': \'sales\', \'code\': 6734, \'name\': \'john\'} [\'dept\', \'code\', \'name\'] [\'sales\', 6734, \'john\']
[h1]Python数据类型转换[/h1]有时候,我们需要对数据内置的类型进行转换,数据类型的转换,你只需要将数据类型作为函数名即可。
以下几个内置的函数可以执行数据类型之间的转换。这些函数返回一个新的对象,表示转换的值。
函数描述int(x [,base])将x转换为一个整数long(x [,base] )将x转换为一个长整数float(x)将x转换到一个浮点数complex(real [,imag])创建一个复数str(x)将对象 x 转换为字符串repr(x)将对象 x 转换为表达式字符串eval(str)用来计算在字符串中的有效Python表达式,并返回一个对象tuple(s)将序列 s 转换为一个元组list(s)将序列 s 转换为一个列表set(s)转换为可变集合dict(d)创建一个字典。d 必须是一个序列 (key,value)元组。frozenset(s)转换为不可变集合chr(x)将一个整数转换为一个字符unichr(x)将一个整数转换为Unicode字符ord(x)将一个字符转换为它的整数值hex(x)将一个整数转换为一个十六进制字符串oct(x)将一个整数转换为一个八进制字符串Python 运算符

本章节主要说明Python的运算符。举个简单的例子 4 +5 = 9 。例子中,4和5被称为操作数,"+"号为运算符。
Python语言支持以下类型的运算符:
  • 算术运算符
  • 比较(关系)运算符
  • 赋值运算符
  • 逻辑运算符
  • 位运算符
  • 成员运算符
  • 身份运算符
  • 运算符优先级
接下来让我们一个个来学习Python的运算符。
[h1]Python算术运算符[/h1]以下假设变量a为10,变量b为20:
运算符描述实例+加 - 两个对象相加a + b 输出结果 30-减 - 得到负数或是一个数减去另一个数a - b 输出结果 -10*乘 - 两个数相乘或是返回一个被重复若干次的字符串a * b 输出结果 200/除 - x除以yb / a 输出结果 2%取模 - 返回除法的余数b % a 输出结果 0**幂 - 返回x的y次幂a**b 为10的20次方, 输出结果 100000000000000000000//取整除 - 返回商的整数部分9//2 输出结果 4 , 9.0//2.0 输出结果 4.0以下实例演示了Python所有算术运算符的操作:
#!/usr/bin/pythona = 21b = 10c = 0c = a + bprint "Line 1 - Value of c is ", cc = a - bprint "Line 2 - Value of c is ", cc = a * bprint "Line 3 - Value of c is ", cc = a / bprint "Line 4 - Value of c is ", cc = a % bprint "Line 5 - Value of c is ", ca = 2b = 3c = a**bprint "Line 6 - Value of c is ", ca = 10b = 5c = a//bprint "Line 7 - Value of c is ", c尝试一下
以上实例输出结果:
Line 1 - Value of c is 31Line 2 - Value of c is 11Line 3 - Value of c is 210Line 4 - Value of c is 2Line 5 - Value of c is 1Line 6 - Value of c is 8Line 7 - Value of c is 2[h1]Python比较运算符[/h1]以下假设变量a为10,变量b为20:
运算符描述实例==等于 - 比较对象是否相等(a == b) 返回 False。!=不等于 - 比较两个对象是否不相等(a != b) 返回 true.不等于 - 比较两个对象是否不相等(a>大于 - 返回x是否大于y(a > b) 返回 False。小于 - 返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。注意,这些变量名的大写。(a>=大于等于 - 返回x是否大于等于y。(a >= b) 返回 False。小于等于 - 返回x是否小于等于y。(a以下实例演示了Python所有比较运算符的操作:
#!/usr/bin/pythona = 21b = 10c = 0if ( a == b ):   print "Line 1 - a is equal to b"else:   print "Line 1 - a is not equal to b"if ( a != b ):   print "Line 2 - a is not equal to b"else:   print "Line 2 - a is equal to b"if ( a  b ):   print "Line 3 - a is not equal to b"else:   print "Line 3 - a is equal to b"if ( a < b ):   print "Line 4 - a is less than b"else:   print "Line 4 - a is not less than b"if ( a > b ):   print "Line 5 - a is greater than b"else:   print "Line 5 - a is not greater than b"a = 5;b = 20;if ( a = a ):   print "Line 7 - b is either greater than  or equal to b"else:   print "Line 7 - b is neither greater than  nor equal to b"以上实例输出结果:
Line 1 - a is not equal to bLine 2 - a is not equal to bLine 3 - a is not equal to bLine 4 - a is not less than bLine 5 - a is greater than bLine 6 - a is either less than or equal to bLine 7 - b is either greater than or equal to b[h1]Python赋值运算符[/h1]以下假设变量a为10,变量b为20:
运算符描述实例=简单的赋值运算符c = a + b 将 a + b 的运算结果赋值为 c+=加法赋值运算符c += a 等效于 c = c + a-=减法赋值运算符c -= a 等效于 c = c - a*=乘法赋值运算符c *= a 等效于 c = c * a/=除法赋值运算符c /= a 等效于 c = c / a%=取模赋值运算符c %= a 等效于 c = c % a**=幂赋值运算符c = a 等效于 c = c  a//=取整除赋值运算符c //= a 等效于 c = c // a以下实例演示了Python所有赋值运算符的操作:
#!/usr/bin/pythona = 21b = 10c = 0c = a + bprint "Line 1 - Value of c is ", cc += aprint "Line 2 - Value of c is ", cc *= aprint "Line 3 - Value of c is ", cc /= aprint "Line 4 - Value of c is ", cc  = 2c %= aprint "Line 5 - Value of c is ", cc **= aprint "Line 6 - Value of c is ", cc //= aprint "Line 7 - Value of c is ", c以上实例输出结果:
Line 1 - Value of c is 31Line 2 - Value of c is 52Line 3 - Value of c is 1092Line 4 - Value of c is 52Line 5 - Value of c is 2Line 6 - Value of c is 2097152Line 7 - Value of c is 99864[h1]Python位运算符[/h1]按位运算符是把数字看作二进制来进行计算的。Python中的按位运算法则如下:
运算符描述实例&按位与运算符(a & b) 输出结果 12 ,二进制解释:0000 1100按位或运算符(ab) 输出结果 61 ,二进制解释:0011 1101^按位异或运算符(a ^ b) 输出结果 49 ,二进制解释:0011 0001~按位取反运算符(~a ) 输出结果 -61 ,二进制解释:1100 0011, 在一个有符号二进制数的补码形式。左移动运算符a>>右移动运算符a >> 2 输出结果 15 ,二进制解释:0000 1111以下实例演示了Python所有位运算符的操作:
#!/usr/bin/pythona = 60            # 60 = 0011 1100b = 13            # 13 = 0000 1101c = 0c = a & b;        # 12 = 0000 1100print "Line 1 - Value of c is ", cc = a | b;        # 61 = 0011 1101print "Line 2 - Value of c is ", cc = a ^ b;        # 49 = 0011 0001print "Line 3 - Value of c is ", cc = ~a;           # -61 = 1100 0011print "Line 4 - Value of c is ", cc = a > 2;       # 15 = 0000 1111print "Line 6 - Value of c is ", c以上实例输出结果:
Line 1 - Value of c is 12Line 2 - Value of c is 61Line 3 - Value of c is 49Line 4 - Value of c is -61Line 5 - Value of c is 240Line 6 - Value of c is 15[h1]Python逻辑运算符[/h1]Python语言支持逻辑运算符,以下假设变量a为10,变量b为20:
运算符描述实例and布尔"与" - 如果x为False,x and y返回False,否则它返回y的计算值。(a and b) 返回 true。or布尔"或" - 如果x是True,它返回True,否则它返回y的计算值。(a or b) 返回 true。not布尔"非" - 如果x为True,返回False。如果x为False,它返回True。not(a and b) 返回 false。以下实例演示了Python所有逻辑运算符的操作:
#!/usr/bin/pythona = 10b = 20c = 0if ( a and b ):   print "Line 1 - a and b are true"else:   print "Line 1 - Either a is not true or b is not true"if ( a or b ):   print "Line 2 - Either a is true or b is true or both are true"else:   print "Line 2 - Neither a is true nor b is true"a = 0if ( a and b ):   print "Line 3 - a and b are true"else:   print "Line 3 - Either a is not true or b is not true"if ( a or b ):   print "Line 4 - Either a is true or b is true or both are true"else:   print "Line 4 - Neither a is true nor b is true"if not( a and b ):   print "Line 5 - Either a is not true or b is  not true or both are not true"else:   print "Line 5 - a and b are true"以上实例输出结果:
Line 1 - a and b are trueLine 2 - Either a is true or b is true or both are trueLine 3 - Either a is not true or b is not trueLine 4 - Either a is true or b is true or both are trueLine 5 - Either a is not true or b is  not true or both are not true[h1]Python成员运算符[/h1]除了以上的一些运算符之外,Python还支持成员运算符,测试实例中包含了一系列的成员,包括字符串,列表或元组。
运算符描述实例in如果在指定的序列中找到值返回True,否则返回False。x 在 y序列中 , 如果x在y序列中返回True。not in如果在指定的序列中没有找到值返回True,否则返回False。x 不在 y序列中 , 如果x不在y序列中返回True。以下实例演示了Python所有成员运算符的操作:
#!/usr/bin/pythona = 10b = 20list = [1, 2, 3, 4, 5 ];if ( a in list ):   print "Line 1 - a is available in the given list"else:   print "Line 1 - a is not available in the given list"if ( b not in list ):   print "Line 2 - b is not available in the given list"else:   print "Line 2 - b is available in the given list"a = 2if ( a in list ):   print "Line 3 - a is available in the given list"else:   print "Line 3 - a is not available in the given list"以上实例输出结果:
Line 1 - a is not available in the given listLine 2 - b is not available in the given listLine 3 - a is available in the given list[h1]Python身份运算符[/h1]身份运算符用于比较两个对象的存储单元
运算符描述实例isis是判断两个标识符是不是引用自一个对象x is y, 如果 id(x) 等于 id(y) , is 返回结果 1is notis not是判断两个标识符是不是引用自不同对象x is not y, 如果 id(x) 不等于 id(y). is not 返回结果 1以下实例演示了Python所有身份运算符的操作:
#!/usr/bin/pythona = 20b = 20if ( a is b ):   print "Line 1 - a and b have same identity"else:   print "Line 1 - a and b do not have same identity"if ( id(a) == id(b) ):   print "Line 2 - a and b have same identity"else:   print "Line 2 - a and b do not have same identity"b = 30if ( a is b ):   print "Line 3 - a and b have same identity"else:   print "Line 3 - a and b do not have same identity"if ( a is not b ):   print "Line 4 - a and b do not have same identity"else:   print "Line 4 - a and b have same identity"以上实例输出结果:
Line 1 - a and b have same identityLine 2 - a and b have same identityLine 3 - a and b do not have same identityLine 4 - a and b do not have same identity[h1]Python运算符优先级[/h1]以下表格列出了从最高到最低优先级的所有运算符:
运算符描述**指数 (最高优先级)~ + -按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)* / % //乘,除,取模和取整除+ -加法减法>>右移,左移运算符&位 \'AND\'^位运算符>=比较运算符等于运算符= %= /= //= -= += *= **=赋值运算符is is not身份运算符in not in成员运算符not or and逻辑运算符以下实例演示了Python所有运算符优先级的操作:
#!/usr/bin/pythona = 20b = 10c = 15d = 5e = 0e = (a + b) * c / d       #( 30 * 15 ) / 5print "Value of (a + b) * c / d is ",  ee = ((a + b) * c) / d     # (30 * 15 ) / 5print "Value of ((a + b) * c) / d is ",  ee = (a + b) * (c / d);    # (30) * (15/5)print "Value of (a + b) * (c / d) is ",  ee = a + (b * c) / d;      #  20 + (150/5)print "Value of a + (b * c) / d is ",  e以上实例输出结果:
Value of (a + b) * c / d is 90Value of ((a + b) * c) / d is 90Value of (a + b) * (c / d) is 90Value of a + (b * c) / d is 50Python While循环语句Python 编程中 while 语句用于循环执行程序,即在某条件下,循环执行某段程序,以处理需要重复处理的相同任务。其基本形式为:
while 判断条件:    执行语句……执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。
当判断条件假false时,循环结束。
执行流程图如下:


实例:
#!/usr/bin/pythoncount = 0while (count < 9):   print \'The count is:\', count   count = count + 1print "Good bye!"以上代码执行输出结果:
The count is: 0The count is: 1The count is: 2The count is: 3The count is: 4The count is: 5The count is: 6The count is: 7The count is: 8Good bye!while 语句时还有另外两个重要的命令 continue,break 来跳过循环,continue 用于跳过该次循环,break 则是用于退出循环,此外"判断条件"还可以是个常值,表示循环必定成立,具体用法如下:
# continue 和 break 用法i = 1while i < 10:      i += 1    if i%2 > 0:     # 非双数时跳过输出        continue    print i         # 输出双数2、4、6、8、10i = 1while 1:            # 循环条件为1必定成立    print i         # 输出1~10    i += 1    if i > 10:     # 当i大于10时跳出循环        break[h1]无限循环[/h1]如果条件判断语句永远为 true,循环将会无限的执行下去,如下实例:
#!/usr/bin/python# -*- coding: UTF-8 -*-var = 1while var == 1 :  # 该条件永远为true,循环将无限执行下去   num = raw_input("Enter a number  :")   print "You entered: ", numprint "Good bye!"以上实例输出结果:
Enter a number  :20You entered:  20Enter a number  :29You entered:  29Enter a number  :3You entered:  3Enter a number between :Traceback (most recent call last):  File "test.py", line 5, in     num = raw_input("Enter a number :")KeyboardInterrupt注意:以上的无限循环你可以使用 CTRL+C 来中断循环。
[h1]循环使用 else 语句[/h1]在 python 中,for … else 表示这样的意思,for 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样。
#!/usr/bin/pythoncount = 0while count < 5:   print count, " is  less than 5"   count = count + 1else:   print count, " is not less than 5"以上实例输出结果为:
0 is less than 51 is less than 52 is less than 53 is less than 54 is less than 55 is not less than 5[h1]简单语句组[/h1]类似if语句的语法,如果你的while循环体中只有一条语句,你可以将该语句与while写在同一行中, 如下所示:
#!/usr/bin/pythonflag = 1while (flag): print \'Given flag is really true!\'print "Good bye!"注意:以上的无限循环你可以使用 CTRL+C 来中断循环。
Python for 循环语句Python for循环可以遍历任何序列的项目,如一个列表或者一个字符串。
语法:
for循环的语法格式如下:
for iterating_var in sequence:   statements(s)流程图:


实例:
#!/usr/bin/python# -*- coding: UTF-8 -*-for letter in \'Python\':     # 第一个实例   print \'当前字母 :\', letterfruits = [\'banana\', \'apple\',  \'mango\']for fruit in fruits:        # 第二个实例   print \'当前字母 :\', fruitprint "Good bye!"尝试一下
以上实例输出结果:
当前字母 : P当前字母 : y当前字母 : t当前字母 : h当前字母 : o当前字母 : n当前字母 : banana当前字母 : apple当前字母 : mangoGood bye![h1]通过序列索引迭代[/h1]另外一种执行循环的遍历方式是通过索引,如下实例:
#!/usr/bin/python# -*- coding: UTF-8 -*-fruits = [\'banana\', \'apple\',  \'mango\']for index in range(len(fruits)):   print \'当前水果 :\', fruits[index]print "Good bye!"以上实例输出结果:
当前水果 : banana当前水果 : apple当前水果 : mangoGood bye!以上实例我们使用了内置函数 len() 和 range(),函数 len() 返回列表的长度,即元素的个数。range返回一个序列的数。
[h1]循环使用 else 语句[/h1]在 python 中,for … else 表示这样的意思,for 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样。
如下实例:
#!/usr/bin/python# -*- coding: UTF-8 -*-for num in range(10,20):  # 迭代 10 到 20 之间的数字   for i in range(2,num): # 根据因子迭代      if num%i == 0:      # 确定第一个因子         j=num/i          # 计算第二个因子         print \'%d 等于 %d * %d\' % (num,i,j)         break            # 跳出当前循环   else:                  # 循环的 else 部分      print num, \'是一个质数\'以上实例输出结果:
10 等于 2 * 511 是一个质数12 等于 2 * 613 是一个质数14 等于 2 * 715 等于 3 * 516 等于 2 * 817 是一个质数18 等于 2 * 919 是一个质数Python 循环嵌套Python 语言允许在一个循环体里面嵌入另一个循环。
Python for 循环嵌套语法:
for iterating_var in sequence:   for iterating_var in sequence:      statements(s)   statements(s)Python while 循环嵌套语法:
while expression:   while expression:      statement(s)   statement(s)你可以在循环体内嵌入其他的循环体,如在while循环中可以嵌入for循环, 反之,你可以在for循环中嵌入while循环。
实例:
以下实例使用了嵌套循环输出2~100之间的素数:
#!/usr/bin/python# -*- coding: UTF-8 -*-i = 2while(i < 100):   j = 2   while(j  i/j) : print i, " 是素数"   i = i + 1print "Good bye!"以上实例输出结果:
2 是素数3 是素数5 是素数7 是素数11 是素数13 是素数17 是素数19 是素数23 是素数29 是素数31 是素数37 是素数41 是素数43 是素数47 是素数53 是素数59 是素数61 是素数67 是素数71 是素数73 是素数79 是素数83 是素数89 是素数97 是素数Good bye!Python break 语句Python break语句,就像在C语言中,打破了最小封闭for或while循环。
break语句用来终止循环语句,即循环条件没有False条件或者序列还没被完全递归完,也会停止执行循环语句。
break语句用在while和for循环中。
如果您使用嵌套循环,break语句将停止执行最深层的循环,并开始执行下一行代码。
Python语言 break 语句语法:
break流程图:


实例:
#!/usr/bin/pythonfor letter in \'Python\':     # First Example   if letter == \'h\':      break   print \'Current Letter :\', lettervar = 10                    # Second Examplewhile var > 0:                 print \'Current variable value :\', var   var = var -1   if var == 5:      breakprint "Good bye!"以上实例执行结果:
Current Letter : PCurrent Letter : yCurrent Letter : tCurrent variable value : 10Current variable value : 9Current variable value : 8Current variable value : 7Current variable value : 6Good bye!Python continue 语句Python continue 语句跳出本次循环,而break跳出整个循环。
continue 语句用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环。
continue语句用在while和for循环中。
Python 语言 continue 语句语法格式如下:
continue流程图:

实例:
#!/usr/bin/python# -*- coding: UTF-8 -*-for letter in \'Python\':     # 第一个实例   if letter == \'h\':      continue   print \'当前字母 :\', lettervar = 10                    # 第二个实例while var > 0:                 var = var -1   if var == 5:      continue   print \'当前变量值 :\', varprint "Good bye!"以上实例执行结果:
当前字母 : P当前字母 : y当前字母 : t当前字母 : o当前字母 : n当前变量值 : 9当前变量值 : 8当前变量值 : 7当前变量值 : 6当前变量值 : 4当前变量值 : 3当前变量值 : 2当前变量值 : 1当前变量值 : 0Good byePython pass 语句Python pass是空语句,是为了保持程序结构的完整性。passass 不做任何事情,一般用做占位语句。Python 语言 pass 语句语法格式如下:pass实例:#!/usr/bin/python# -*- coding: UTF-8 -*-# 输出 Python 的每个字母for letter in \'Python\':   if letter == \'h\':      pass      print \'这是 pass 块\'   print \'当前字母 :\', letterprint "Good bye!"以上实例执行结果:当前字母 : P当前字母 : y当前字母 : t这是 pass 块当前字母 : h当前字母 : o当前字母 : nGood bye!!Python 数字Python 数字数据类型用于存储数值。
数据类型是不允许改变的,这就意味着如果改变数字数据类型得值,将重新分配内存空间。
以下实例在变量赋值时数字对象将被创建:
var1 = 1var2 = 10您也可以使用del语句删除一些数字对象引用。
del语句的语法是:
del var1[,var2[,var3[....,varN]]]]您可以通过使用del语句删除单个或多个对象,例如:
del vardel var_a, var_bPython 支持四种不同的数值类型:
  • 整型(Int) - 通常被称为是整型或整数,是正或负整数,不带小数点。
  • 长整型(long integers) - 无限大小的整数,整数最后是一个大写或小写的L。
  • 浮点型(floating point real values) - 浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 102 = 250)
  • 复数( (complex numbers)) - 复数的虚部以字母J 或 j结尾 。如:2+3i
intlongfloatcomplex1051924361L0.03.14j100-0x19323L15.2045.j-7860122L-21.99.322e-36j0800xDEFABCECBDAECBFBAEl32.3+e18.876j-0490535633629843L-90.-.6545+0J-0x260-052318172735L-32.54e1003e+26J0x69-4721885298529L70.2-E124.53e-7j
  • 长整型也可以使用小写"L",但是还是建议您使用大写"L",避免与数字"1"混淆。Python使用"L"来显示长整型。
  • Python还支持复数,复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型
[h1]Python数字类型转换[/h1]int(x [,base ])         将x转换为一个整数  long(x [,base ])        将x转换为一个长整数  float(x )               将x转换到一个浮点数  complex(real [,imag ])  创建一个复数  str(x )                 将对象 x 转换为字符串  repr(x )                将对象 x 转换为表达式字符串  eval(str )              用来计算在字符串中的有效Python表达式,并返回一个对象  tuple(s )               将序列 s 转换为一个元组  list(s )                将序列 s 转换为一个列表  chr(x )                 将一个整数转换为一个字符  unichr(x )              将一个整数转换为Unicode字符  ord(x )                 将一个字符转换为它的整数值  hex(x )                 将一个整数转换为一个十六进制字符串  oct(x )                 将一个整数转换为一个八进制字符串  [h1]Python数学函数[/h1]函数返回值 ( 描述 )abs(x)返回数字的绝对值,如abs(-10) 返回 10ceil(x)返回数字的上入整数,如math.ceil(4.1) 返回 5cmp(x, y)如果 x y 返回 1exp(x)返回e的x次幂(ex),如math.exp(1) 返回2.718281828459045fabs(x)返回数字的绝对值,如math.fabs(-10) 返回10.0floor(x)返回数字的下舍整数,如math.floor(4.9)返回 4log(x)如math.log(math.e)返回1.0,math.log(100,10)返回2.0log10(x)返回以10为基数的x的对数,如math.log10(100)返回 2.0max(x1, x2,...)返回给定参数的最大值,参数可以为序列。min(x1, x2,...)返回给定参数的最小值,参数可以为序列。modf(x)返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。pow(x, y)x**y 运算后的值。[round(x ,n])返回浮点数x的四舍五入值,如给出n值,则代表舍入到小数点后的位数。sqrt(x)返回数字x的平方根,数字可以为负数,返回类型为实数,如math.sqrt(4)返回 2+0j[h1]Python随机数函数[/h1]随机数可以用于数学,游戏,安全等领域中,还经常被嵌入到算法中,用以提高算法效率,并提高程序的安全性。
Python包含以下常用随机数函数:
函数描述choice(seq)从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数。randrange ([start,] stop [,step])从指定范围内,按指定基数递增的集合中获取一个随机数,基数缺省值为1random()随机生成下一个实数,它在[0,1)范围内。[seed(x])改变随机数生成器的种子seed。如果你不了解其原理,你不必特别去设定seed,Python会帮你选择seed。shuffle(lst)将序列的所有元素随机排序uniform(x, y)随机生成下一个实数,它在[x,y]范围内。[h1]Python三角函数[/h1]Python包括以下三角函数:
函数描述acos(x)返回x的反余弦弧度值。asin(x)返回x的反正弦弧度值。atan(x)返回x的反正切弧度值。atan2(y, x)返回给定的 X 及 Y 坐标值的反正切值。cos(x)返回x的弧度的余弦值。hypot(x, y)返回欧几里德范数 sqrt(xx + yy)。sin(x)返回的x弧度的正弦值。tan(x)返回x弧度的正切值。degrees(x)将弧度转换为角度,如degrees(math.pi/2) , 返回90.0radians(x)将角度转换为弧度
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:
帖子:
精华:
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP