Python - 基本语法
上一页下一页
Python 语言与 Perl、C 和 Java 有许多相似之处。但是,这些语言之间存在一些明显的差异。
第一个 Python 程序
让我们以不同的编程模式来执行程序。
交互模式编程
在不将脚本文件作为参数传递的情况下调用解释器会出现以下提示 -
$ python Python 2.4.3 (#1, Nov 11 2010, 13:34:43) [GCC 4.1.2 20080704 (Red Hat 4.1.2-48)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>>
在 Python 提示符下键入以下文本,然后按 Enter -
>>> print "Hello, Python!"
如果您正在运行新版本的 Python,那么您需要使用带括号的 print 语句,如 print ("Hello, Python!"); .然而在 Python 2.4.3 版本中,这会产生以下结果 -
Hello, Python!
脚本模式编程
使用脚本参数调用解释器开始执行脚本并继续执行,直到脚本完成。脚本完成后,解释器不再处于活动状态。
让我们在脚本中编写一个简单的 Python 程序。 Python 文件具有扩展名 .py .在 test.py 文件中输入以下源代码 -
现场演示print "Hello, Python!"
我们假设您在 PATH 变量中设置了 Python 解释器。现在,尝试如下运行该程序 -
$ python test.py
这会产生以下结果 -
Hello, Python!
让我们尝试另一种方式来执行 Python 脚本。这是修改后的 test.py 文件 -
现场演示#!/usr/bin/python print "Hello, Python!"
我们假设您在 /usr/bin 目录中有可用的 Python 解释器。现在,尝试如下运行该程序 -
$ chmod +x test.py # This is to make file executable $./test.py
这会产生以下结果 -
Hello, Python!
Python 标识符
Python 标识符是用于标识变量、函数、类、模块或其他对象的名称。标识符以字母 A 到 Z 或 a 到 z 或下划线 (_) 开头,后跟零个或多个字母、下划线和数字(0 到 9)。
Python 不允许在标识符中使用标点符号,例如 @、$ 和 %。 Python 是一种区分大小写的编程语言。因此,人力 和人力 在 Python 中是两个不同的标识符。
以下是 Python 标识符的命名约定 -
-
类名以大写字母开头。所有其他标识符都以小写字母开头。
-
以单个前导下划线开头的标识符表示该标识符是私有的。
-
以两个前导下划线开头的标识符表示高度私有的标识符。
-
如果标识符也以两个下划线结尾,则标识符是语言定义的特殊名称。
保留字
以下列表显示了 Python 关键字。这些是保留字,您不能将它们用作常量或变量或任何其他标识符名称。所有 Python 关键字都只包含小写字母。
和 | 执行 | 不是 |
断言 | 终于 | 或 |
休息 | 对于 | 通过 |
类 | 来自 | 打印 |
继续 | 全局 | 提高 |
定义 | 如果 | 返回 |
删除 | 导入 | 试试 |
elif | 在 | 同时 |
其他 | 是 | 与 |
除了 | λ | 产量 |
行和缩进
Python 没有提供大括号来指示类和函数定义或流控制的代码块。代码块用行缩进表示,这是严格执行的。
缩进中的空格数是可变的,但块中的所有语句必须缩进相同的数量。例如 -
if True: print "True" else: print "False"
但是,以下块会产生错误 -
if True: print "Answer" print "True" else: print "Answer" print "False"
因此,在 Python 中,所有缩进相同数量空格的连续行将形成一个块。以下示例有各种语句块 -
注意 − 此时不要试图理解逻辑。只要确保你理解各种块,即使它们没有大括号。
#!/usr/bin/python import sys try: # open file stream file = open(file_name, "w") except IOError: print "There was an error writing to", file_name sys.exit() print "Enter '", file_finish, print "' When finished" while file_text != file_finish: file_text = raw_input("Enter text: ") if file_text == file_finish: # close the file file.close break file.write(file_text) file.write("\n") file.close() file_name = raw_input("Enter filename: ") if len(file_name) == 0: print "Next time please enter something" sys.exit() try: file = open(file_name, "r") except IOError: print "There was an error reading file" sys.exit() file_text = file.read() file.close() print file_text
多行语句
Python 中的语句通常以新行结束。然而,Python 允许使用行继续符 (\) 来表示该行应该继续。例如 -
total = item_one + \ item_two + \ item_three
[]、{} 或 () 括号内的语句不需要使用续行符。例如 -
days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday']
Python 中的引用
Python 接受单引号 (')、双引号 (") 和三引号 (''' 或 """) 来表示字符串文字,只要相同类型的引号开始和结束字符串即可。
三引号用于跨多行跨越字符串。例如,以下所有内容都是合法的 -
word = 'word' sentence = "This is a sentence." paragraph = """This is a paragraph. It is made up of multiple lines and sentences."""
Python 中的注释
不在字符串文字内的井号 (#) 开始注释。 # 之后直到物理行末尾的所有字符都是注释的一部分,Python 解释器会忽略它们。
现场演示#!/usr/bin/python # First comment print "Hello, Python!" # second comment
这会产生以下结果 -
Hello, Python!
您可以在语句或表达式之后的同一行中键入注释 -
name = "Madisetti" # This is again comment
您可以如下注释多行 -
# This is a comment. # This is a comment, too. # This is a comment, too. # I said that already.
Python解释器也会忽略以下三引号字符串,并且可以用作多行注释:
''' This is a multiline comment. '''
使用空行
仅包含空格,可能带有注释的行称为空行,Python 完全忽略它。
在交互式解释器会话中,您必须输入一个空的物理行来终止多行语句。
等待用户
程序的以下行显示提示,语句为“Press the enter key to exit”,并等待用户采取行动 -
#!/usr/bin/python raw_input("\n\nPress the enter key to exit.")
这里,“\n\n”用于在显示实际行之前创建两个新行。一旦用户按下该键,程序就结束。这是一个很好的技巧,可以在用户完成应用程序之前保持控制台窗口打开。
一行中的多个语句
分号 (; ) 允许在单行上有多个语句,因为这两个语句都不启动新的代码块。这是使用分号的示例片段 -
import sys; x = 'foo'; sys.stdout.write(x + '\n')
多个语句组作为套件
构成单个代码块的一组单独的语句称为 suites 在 Python 中。复合或复杂的语句,例如 if、while、def 和 class 需要一个标题行和一个套件。
标题行以语句开头(使用关键字)并以冒号 ( :) 结束,然后是组成套件的一行或多行。例如 -
if expression : suite elif expression : suite else : suite
命令行参数
可以运行许多程序来为您提供一些关于它们应该如何运行的基本信息。 Python 使您可以使用 -h 来做到这一点 -
$ python -h usage: 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 的其余概念后稍后再学习。
Python