1.简介
- 简介
2. 模块
在python中提供了两种导入模块的方式,一种是直接import,另一种则是使用from import来导入某个模块中的对象。
事实上模块是对象,并且所有的模块都有一个内置属性 __name__。一个模块的 __name__ 的值取决于您如何应用模块。如果 import 一个模块,那么模块__name__ 的值通常为模块文件名,不带路径或者文件扩展名。但是您也可以像一个标准的程序样直接运行模块,在这种情况下,__name__ 的值将是一个特别缺省”__main__”。所以一般在py文件最后都有以下语句。
if __name__ == '__main__':
main()
3.Python的设计理念
4.基本语法
4.0 注释
python中的注释和C++完全不同,python中有两种风格的注释,一种是以#字符开始的,单行注释。另一种是用三个双引号包裹的块注释。
# this is comment
"""
these are comments
"""
4.1 if语句
相比于JAVA和C++,python在语法上更加灵活,所以for的形式也更为多样化,同时,在C++中严格的else if则被简写为elif,同时 else if是不被允许的。
if i % 4 == 0 :
print "if %d" % (i);
elif i % 4 == 1:
print "else if 1 %d" % (i);
elif i % 4 == 2:
print "else if 2 %d" % (i);
else:
print "else %d" % (i);
4.2 for语句
for i in range(4):
if i % 4 == 0 :
print "if %d" % (i);
else :
if i % 4 == 1:
print "else if 1 %d" % (i);
elif i % 4 == 2:
print "else if 2 %d" % (i);
else:
print "else %d" % (i);
另外python中还可以执行如下的循环
words = ['cat', 'window', 'defenestrate']
for w in words:
print w, len(w)
另外在python中的循环可以有else从句,当循环正常结束时,else从句就会执行,但是,需要说明的是,如果以break跳出循环时,else从句并不会执行。如下面的代码所示:
for n in range(2, 10):
for x in range(2, n):
if n % x == 0:
print n, 'equals', x, '*', n/x
break
else:
print n, 'is a prime number'
输出结果如下:
3 is a prime number
4 equals 2 * 2
5 is a prime number
5 is a prime number
5 is a prime number
6 equals 2 * 3
7 is a prime number
7 is a prime number
7 is a prime number
7 is a prime number
7 is a prime number
8 equals 2 * 4
9 is a prime number
9 equals 3 * 3
4.3 pass语句
在python中海油一个很重要的语句,是pass语句,这个语句意味着什么也不做,一般用来创建一个最小类,或者作为函数的占位符使用。
class MyEmptyClass:
pass
def initlog(*args):
pass # Remember to implement this!
在python中参数之前可以用*或者**来修饰,分别表示:
* 用来传递任意个无名字参数,这些参数会一个Tuple的形式访问。
**用来处理传递任意个有名字的参数,这些参数用dict来访问。*
4.4 def语句
在python中所有的函数定义以及类定义之前都需要使用def关键字,来修饰,并在最后以:结尾。如以上的代码所示。
4.4 默认参数
def ask_ok(prompt, retries=4, complaint='Yes or no, please!'):
4.5 Lambda 表达式
>>> def make_incrementor(n):
... return lambda x: x + n
...
>>> f = make_incrementor(42)
>>> f(0)
42
>>> f(1)
43
4.3 字符串
4.4 列表
4.5 字典
4.6 元组
5. 类和对象
6. I/O
7. 库