Python是一种简单易学,功能强大的编程语言。它包括了高效的高级数据结构和简单而有效的方法,面向对象编程。Python优雅的语法,动态类型,以及它天然的解释能力,使其成为理想的语言,脚本和应用程序快速开发在大多数平台上的许多领域。
Python解释器及其扩展标准库的源码和编译版本可以从Python的Web站点,http://www.python.org/
所有主要平台可自由查看,并且可以自由发布。该站点上也包含了分配和指针到很多免费的第三方Python模块,程序,工具,以及附加的文档。
Python的解释器很容易扩展新的功能,并在C或C ++(或由C来调用其他语言)实现的数据类型。 Python也很适于作为定制应用的一种扩展语言。
有关标准对象和模块的详细介绍,请参见Python标准库。Python语言参考给出了语言的更正式的定义。需要编写C或C
+ +扩展,请阅读扩展和嵌入Python解释器和Python/C的API参考手册。也有几本书涵盖了各个深度的Python。
本教程并不试图全面,涵盖每一个功能,甚至每一个常用功能。相反,它介绍了许多Python中最引人注目的功能,会给Python语言的韵味和风格是一个好开始。看完之后,你就可以阅读和编写Python模块和程序,将准备进一步了解Python标准库描述的各种Python库模块。
有关学习Python 的目录:
Python环境安装配置
Python数字
Python字符串
Python列表
Python元组
Python字典
1、Python环境安装配置
Python是一种通用的计算机编程语言,跻身排名于世界前八最流行的编程语言。
使用Python,可以编写出很多东西,如:Web应用程序,桌面应用程序,游戏。它可以作为完整的脚本解释器和开发平台。
今天,Python语言由谷歌,欧洲核子研究中心,美国航空航天局,雅虎和许多大型组织使用。
在这个免费的初级课程,你可以学习 Python 的基本知识。希望本次介绍更多学习后,可以做非初学者教程,如构建
Web 应用程序和其他教程。可以使用它进行 Python2 或 Python3 编程。
在线运行Python代码
Repl.it Python 解释器
Ideone.com Python 解释器
Codepad Python 解释器
运行Python代码在你的机器上
Python官方安装指南
PyCharm IDE (桌面IDE)
Atom + script plugin (最小IDE)
试试以下这段代码:
试试这个代码,以测试是否已经正确安装了Python。
#!/usr/bin/env python print("Hello World!") print("This is a Python program.") |
(在Python2.x中,打印不必使用中括号,对于 Python3.X 是必需的)
执行后输出结果:
Hello World! This is a Python program |
2、Python 数字
一台计算机上的基本层面只是二进制数字(0,1)。每一个编程语言支持某种形式的数字,但不是二进制。Python数字有更广泛的理解,它支持:
自然数(也称为整数或短int)
实数(浮点或浮点数)
非常大的数字(long)
复数(你可能知道,数学课里的复数)
当定义数字被存储在变量(一个“数据保持器”),则无需明确定义数字的类型。 例如:
#!/usr/bin/python x = 3
# an integer stored (in variable x) f = 3.1415926
# a floating real point (in variable f) name = "Python"
# a string big = 358315791L
# long, a very large number z = complex(2,3)
# (2+3i) a complex number. consists of real and imaginary part. print(x) print(f) print(name) print(big) print(z) |
结果:
3 3.1415926 Python 358315791 (2+3j) |
最大值取决于你的平台上。在32位机上的最小值和最大值:
在64位计算机上的数字范围:
操作符
你可以做算术运算,如加(+),乘(*),除(/),减( - )。 Python不支持 x 符号乘法:乘法符号为
*, x 可被用作变量。 尝试这个:
#!/usr/bin/env python x = 3 y = 8 sum = x + y print(sum) |
预期的输出结果:
用户输入
也可以要求用户使用 raw_input 函数进行输入:
#!/usr/bin/env python x = int(raw_input("Enter x:")) y = int(raw_input("Enter y:")) sum = x + y print(sum) |
在这种情况下,我们希望整数(整数),这就是为什么我们使用int()函数。如果想要输入浮点数,那么应该使用:float(raw_input(“Enter
x:”))。
在最新的 Python 版本,可以使用 input() 函数来代替:
#!/usr/bin/env python x = int(input("Enter x:")) y = int(input("Enter y:")) sum = x + y print(sum) |
3、Python3 字符串
Python已经在内置支持用于存储和操作文本:字符序列被称为子符串。 要定义字符串应将文本放在引号之间,如果使用单引号('),双引号(")或三引号("""),这并不重要。并无规定最少和最大在字符串中可存储字符的数目。一个空字符串没有文字引号。
例如:
s = 'hello' s = "hello" s = """hello""" |
我们可以很容易打印文本和获取文本的长度:
#!/usr/bin/env python s = "Hello world" # define the string print(s) print(len(s)) # prints the length of the string |
字符串的索引
Python索引字符串的字符,每一个索引与一个唯一的字符相关联。例如,在字符串“python”中的字符的索引:
Python字符串的索引
第0索引用于字符串的第一个字符。访问字符使用[]语法。因此,s[0] 是一个字符串的第一个字符。索引s[1]是第二个字符。
字符不存在的不能被使用。上面的例子索引只到5,这意味着s[6]是不可访问的。请尝试以下操作:
#!/usr/bin/python s = "Hello Python" print(s) # prints whole string print(s[0]) # prints "H" print(s[1]) # prints "e" |
如果使用 Python3.x print函数需要使用括号。
字符串切片
给定一个字符串s,切片的语法是:
s[ startIndex : pastIndex ] |
startIndex是字符串的开始索引。pastIndex是切片的终点。如果省略了第一个索引,切片将从头开始。如果省略了最后一个索引,切片则到字符串的结尾。
例如:
#!/usr/bin/python s = "Hello Python" print(s[0:2]) # prints "He" print(s[2:4]) # prints "ll" print(s[6:]) # prints "Python" |
修改字符串
在Python中有许多方法可以用于修改字符串。它们创建字符串,取代了旧的字符串的副本。
#!/usr/bin/python s = "Hello Python" print(s + ' ' + s) # print concatenated string. print(s.replace('Hello','Thanks')) # print a string with a replaced word # convert string to uppercase s = s.upper() print(s) # convert to lowercase s = s.lower() print(s) |
Python字符串比较,包含和串联
要测试两个字符串是否相等使用等号(= =)。可以使用“in”关键字测试一个字符串包含子字符串。要添加字符串连接在一起使用加(+)运算符。
#!/usr/bin/python sentence = "The cat is brown" q = "cat" if q == sentence: print('strings equal') if q in sentence: print(q + " found in " + sentence) |
转义字符
在Python中有特殊的字符,可以在字符串中使用这些特殊的字符。可以使用它们来创建新行,制表符等等。让我们实际操作例子,使用“\n”或换行符:
#!/usr/bin/env python str1 = "In Python,\nyou can use special characters in
strings.\nThese special characters can be..." print(str1) |
有时可能想显示双引号括起来,但是它们已经习惯使用字符串在开始或结束位置,所以我们不得不转义它们。 一个例子:
#!/usr/bin/env python str1 = "The word \"computer\" will be in quotes." print(str1) |
在字符串中使用特殊字符如下所示:
、Python 列表
Python有一个数据类型叫列表,被称为 ‘list’. 列表可以包含字符串(文字)和数字。列表使用的是括号定义
[]. 要访问数据,使用相同的括号。如字符串,第一元素是[0]。列表用法示例如下:
#!/usr/bin/python l = [ "Drake", "Derp", "Derek", "Dominique" ] print l # prints all elements print l[0] # print first element print l[1] # prints second element |
输出结果:
['Drake', 'Derp', 'Derek', 'Dominique'] Drake Derp |
追加和删除列表项
我们可以使用函数 append() 和 remove() 来操作列表。
#!/usr/bin/python l = [ "Drake", "Derp", "Derek", "Dominique" ] print l # prints all elements l.append("Victoria") # add element. print l # print all elements l.remove("Derp") # remove element. l.remove("Drake") # remove element. print l # print all elements. |
输出结果:
['Drake', 'Derp', 'Derek', 'Dominique'] ['Drake', 'Derp', 'Derek', 'Dominique', 'Victoria'] ['Derek', 'Dominique', 'Victoria'] |
列表排序
我们可以使用 sort()函数排序列表。
#!/usr/bin/python l = [ "Drake", "Derp", "Derek", "Dominique" ] print l # prints all elements l.sort() # sorts the list in alphabetical order print l # prints all elements
|
输出结果:
['Drake', 'Derp', 'Derek', 'Dominique'] ['Derek', 'Derp', 'Dominique', 'Drake'] |
如果想要列表降序排列,可使用 reverse()函数。
#!/usr/bin/python l = [ "Drake", "Derp", "Derek", "Dominique" ] print l # prints all elements l.sort() # sorts the list in alphabetical order l.reverse() # reverse order. print l # prints all elements |
输出结果:
['Drake', 'Derp', 'Derek', 'Dominique'] ['Drake', 'Dominique', 'Derp', 'Derek'] |
5、Python 元组
元组数据结构用于存储一组数据。元组中的元素以逗号分隔。 一旦创建,元组中的值不能改变。在 Python
中一个空的元组将被定义为:
逗号需要用在一个项目的元组:
一个项目使用逗号可能有点反直观,但是没有逗号在单个项目中,则无法访问该元素。 对于多个项目,不必使用逗号在结尾。这是元组的一个例子:
personInfo = ("Diana", 32, "New York") |
元组内的数据可以是一个或多个数据类型,如文本和数字。 数据存取访问,我们可以简单的使用索引的数据。像往常一样,索引是一个在括号内的数字:
#!/usr/bin/env python personInfo = ("Diana", 32, "New York") print(personInfo[0]) print(personInfo[1]) |
输出结果:
如果想一次赋值给多个变量,可以使用元组:
#!/usr/bin/env python name,age,country,career = ('Diana',32,'Canada','CompSci') print(country) |
在右侧的元组被写入。左边的运算等于运算符是对应的变量。输出如下:
Python中追加元素到元组
如果有一个元组,可以将它执行 + 操作。 可以只添加一个元组到现有的元组。
#!/usr/bin/env python x = (3,4,5,6) x = x + (1,2,3) print(x) |
输出:
转换元组
元组到列表是将元组转换为一个元组,可以使用 tuple() 函数。
#!/usr/bin/env python listNumbers = [6,3,7,4] x = tuple(listNumbers) print(x) |
可以使用 list()函数将现有的元组转换为列表:
#!/usr/bin/env python x = (4,5) listNumbers = list(x) print(listNumbers) |
元组转为字符串,如果元组中只包含字符串(文本),可以使用:
#!/usr/bin/env python person = ('Diana','Canada','CompSci') s = ' '.join(person) print(s) |
排序元组
元组数组是不能修改的,并且没有任何排序功能。但是可以使用 sorted() 函数返回一个列表。这个列表可被转换到一个新的元组。请记住元组是不能被修改的,我们简单的创建一个新的元组,在排序时出现这种情况。
#!/usr/bin/env python person = ('Alison','Victoria','Brenda','Rachel','Trevor') person = tuple(sorted(person)) print(person) |
6、Python3 字典
字典可以被看作是一个无序的键 : 值对。 一对大括号用于创建一个空的字典: {}. 每个元素可以映射到一个特定的值。整数或字符串可以用来作索引。字典没有顺序。让我们用一个例子作一个简单的解释:
#!/usr/bin/python words = {} words["Hello"] = "Bonjour" words["Yes"] = "Oui" words["No"] = "Non" words["Bye"] = "Au Revoir" print words["Hello"] print words["No"] |
输出:
我们并不局限于在值部分来用单词的定义。一个演示:
#!/usr/bin/pythons dict = {} dict['Ford'] = "Car" dict['Python'] = "The Python Programming Language" dict[2] = "This sentence is stored here." print dict['Ford'] print dict['Python'] print dict[2] |
输出:
Car The Python Programming Language This sentence is stored here. |
操作字典
我们可以在字典声明之后操作存储在其中的数据。这显示在下面的例子:
#!/usr/bin/python
words = {}
words["Hello"] = "Bonjour"
words["Yes"] = "Oui"
words["No"] = "Non"
words["Bye"] = "Au Revoir"
print words # print key-pairs.
del words["Yes"] # delete a key-pair.
print words # print key-pairs.
words["Yes"] = "Oui!" # add new key-pair.
print words # print key-pairs. |
输出:
{'Yes': 'Oui', 'Bye': 'Au Revoir',
'Hello': 'Bonjour', 'No': 'Non'} {'Bye': 'Au Revoir', 'Hello': 'Bonjour', 'No': 'Non'} {'Yes': 'Oui!', 'Bye': 'Au Revoir',
'Hello': 'Bonjour', 'No': 'Non'} |
|