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 的目录:

  1. Python 环境安装配置
  2. Python 数字
  3. Python 字符串
  4. Python 列表
  5. Python 元组
  6. Python 字典

1、Python 环境安装配置

Python 是一种通用的计算机编程语言,跻身排名于世界前八最流行的编程语言。

使用 Python,可以编写出很多东西,如:Web 应用程序,桌面应用程序,游戏。它可以作为完整的脚本解释器和开发平台。

今天,Python 语言由谷歌,欧洲核子研究中心,美国航空航天局,雅虎和许多大型组织使用。

在这个免费的初级课程,你可以学习 Python 的基本知识。希望本次介绍更多学习后,可以做非初学者在线教程,如构建 Web 应用程序和其他在线教程。可以使用它进行 Python2 或 Python3 编程。

在线运行 Python 代码

运行 Python 代码在你的机器上

试试以下这段代码:
试试这个代码,以测试是否已经正确安装了 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 数字有更广泛的理解,它支持:

当定义数字被存储在变量(一个“数据保持器”),则无需明确定义数字的类型。 例如:

#!/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 位机上的最小值和最大值:

数据类型 最小值 最大值
signed int -2147483647 2147483647
long - 只受内存限制
float 2.2250738585072014e-308 1.7976931348623157e+308

在 64 位计算机上的数字范围:

数据类型 最小值 最大值
signed int -9223372036854775807 9223372036854775807
long - 只受内存限制
float 2.2250738585072014e-308 1.7976931348623157e+308

操作符
你可以做算术运算,如加(+),乘(*),除(/),减( - )。 Python 不支持 x 符号乘法:乘法符号为 *, x 可被用作变量。 尝试这个:

#!/usr/bin/env python

x = 3
y = 8

sum = x + y

print(sum)

预期的输出结果:

11

用户输入

也可以要求用户使用 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 string

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)

在字符串中使用特殊字符如下所示:

操作 字符
新行 \n
引号 \"
单引号 \'
制表符 \t
反斜杠 \\

4、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 中一个空的元组将被定义为:

tuple = ()

逗号需要用在一个项目的元组:

tuple = (3,)

一个项目使用逗号可能有点反直观,但是没有逗号在单个项目中,则无法访问该元素。 对于多个项目,不必使用逗号在结尾。这是元组的一个例子:

personInfo = ("Diana", 32, "New York")

元组内的数据可以是一个或多个数据类型,如文本和数字。 数据存取访问,我们可以简单的使用索引的数据。像往常一样,索引是一个在括号内的数字:

#!/usr/bin/env python

personInfo = ("Diana", 32, "New York")
print(personInfo[0])
print(personInfo[1])

输出结果:

Diana
32

如果想一次赋值给多个变量,可以使用元组:

#!/usr/bin/env python

name,age,country,career = ('Diana',32,'Canada','CompSci')
print(country)

在右侧的元组被写入。左边的运算等于运算符是对应的变量。输出如下:

Canada

Python 中追加元素到元组

如果有一个元组,可以将它执行 + 操作。 可以只添加一个元组到现有的元组。

#!/usr/bin/env python

x = (3,4,5,6)
x = x + (1,2,3)
print(x)

输出:

(3, 4, 5, 6, 1, 2, 3)

转换元组

元组到列表是将元组转换为一个元组,可以使用 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"]

输出:

Bonjour
Non

我们并不局限于在值部分来用单词的定义。一个演示:

#!/usr/bin/python

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'}