and:关键字and,用于在一个语句中(例如if语句)把两个表达式连接起来,意为两个表达式必须都为真。
as:关键字as用来给引入的模块起另一个名字。例如,假设你有一个名字很长的模块:
import i_am_a_python_module_that_is_not_very_useful
如果每次用到这个模块你都要输入它的名字,这样会很麻烦:
import i_am_a_python_module_that_is_not_very_useful
i_am_a_python_module_that_is_not_very_useful.do_something()
I have done something that is not useful.
i_am_a_python_module_that_is_not_very_useful.do_something_else()
I have done something else that is not useful!!
然而当你引入它时,你可以给这个模块一个新的、短一些的名字,然后简单地使用这个新名字(就像昵称一样),像这样:
import i_am_a_python_module_that_is_not_very_useful as notuseful
notuseful.do_something()
I have done something that is not useful.
notuseful.do_something_else()
I have done something else that is not useful!!
assert
关键字assert(断言)用于声明一段代码必须为真。它是另一种捕获代码中的错误和问题的方式,一般用于更高级的编程中。下面是一个简单的assert语句:
>>> mynumber=10
>>> assert mynumber<5
Traceback (most recent call last):
File "
assert mynumber<5
AssertionError
break
关键字break用于让某段代码的运行停止。你可以在一个for循环中使用break。
class
关键字class用于定义一种类型的对象,如车、动物、或者人。类可以有一个__init__函数,它用于执行这个类的对象被创建时所需要执行的所有任务。
continue
关键字continue是一种在循环中直接“跳”到下一次的方法,这样的话循环体中余下的代码将不被执行。和break不同的是它不会跳出循环,它只是从下一个元素继续执行。
def
关键字def用于定义函数。例如,要写一个把年数转换成相等的分钟数的函数是:
>>> def minutes(years):
return years*365*24*60
>>> minutes(10)
5256000
del
del用于删除。
elif
else
except
关键字except用于捕获代码中的问题。它主要用于相当复杂的程序中。
finally
关键字finally用于确保如果有错误发生时,某段代码一定执行(通常是清理工作)。它用于更高级的编程。
for
关键字for用于创建一个运行特定次数的循环代码。
from
global
在第7章介绍了程序中的作用域。作用域是指一个变量的可见范围。如果变量在函数之外定义,通常它在函数中也是可见的。另一方面,如果变量在函数内定义,通常它在函数之外不可见。关键字是这个规则的一个例外。一个定义为global的变量在任何地方都是可见的。
>>> def test():
global a
a=1
b=2
>>> test()
>>> print(a)
1
>>> print(b)
Traceback (most recent call last):
File "
print(b)
NameError: name 'b' is not defined
变量a在函数中被改变为全局变量,所以即使函数已经执行结束,它仍然可见。但是b还是只在函数内可见。(必须在给变量赋值以前使用global关键字。)
if
import
in
is
关键字is有点像等于运算符(==),用来判断两个东西是否相等(例如10==10是真,10==11是假)。然而,is和==有本质的不同。如果比较两样东西,==可能会返回真,is却不一定(即使你认为这两个东西是一样的)。这是一个高级的编程概念。
lambda
关键字lambda是用来创建匿名的,或者说内嵌的函数。这个关键字用于更高级的编程中。
not
or
pass
raise
关键字raise可以用来产生一个错误。这听起来可能有点奇怪,但是在高级编程中它非常有用。
return
关键字return用来在函数中返回一个值。例如,可以创建一个函数来计算自从你上一次生日以来过了多少秒:
>>> def age_in_seconds(age_in_years):
return age_in_years*365*24*60*60
>>> print(age_in_seconds(9))
283824000
try
关键字try开始一个语句块,这个语句块以except和finally关键字结束。同时,这些try/except/finally中的语句块一起用来处理程序中的错误,比方说确保程序会给用户显示一条有用的消息,而不是给出一条不友好的Python错误信息。
while
with
关键字with的用法和try、finally关键字相似,创建一个和对象相关的语句块。
yield
关键字yield和return近似,不同在于它用于一类特殊的对象,叫做“生成器”(generator)。生成器在使用过程中创建值(也就是说在需要的时候创建值),所以这样的话,range函数的行为就像是一个生成器。