第二章 词汇和语法约定
行结构和缩进
1.换行符
程序中的每条语句都以 换行符结束,可以使用 续行符(\)将长语句分为几行,如下所示:>>> import math
>>> a=math.cos(3*10)+\
math.sin(3*20)
包括大括号、圆括号、方括号或三引号中的任意程序都可放在多行,不需要换行符,因为它们清晰地表示了定义的开始和结束
要在一行上防止多条语句,可以使用分号(;)
2.缩进:用于表示不同的代码块
if a:statement 1
statement 2
代码块中首条语句的缩进量可以是任意的,但整个代码块中的缩进必须保持一致
*要表示一个空的函数体或代码块,可使用pass语句,例:
if a:
pass
*不建议用制表符进行缩进,#字符表示此行内容是注释。
数字字面量
1.内置的数字字面量:bool、int、complex、float、double- *要使用八进制、十六进制、二进制指定整数,可以在值的前面分别加上0、0x、0b
- *整数的位数是任意的,python会根据值的大小,选择将整数内部表示为固定精度的机器整数或任意精度的长整数类型
- *整数或浮点数后面加上j或者J构成虚数,用一个实数加上一个虚数就够成了复数
字符串字面值
- 转义码\000(\000~\377)和\xhh(x00~xff)用于将字符嵌入到很难输入的字符串字面量(如控制码、非打印字符号等)必须为这些转义码指定对应于字符值的整数值
>>> a='jalape\xf1o' >>> a 'jalapeño'
- \u、\U、\N转义码都可用在Unicode字面量中插入任意字符,-u前缀可省略
>>> a='\u00f1o' >>> a 'ño'
Unicode字符好具有描述性名称,可使用\N{字符名称}转义序列
>>> s=u'jalape\N{LATIN SMALL LETTER N WITH TILDE}O' >>> s 'jalapeñO'
文档字符串
如果模块、类或函数定义的第一条语句是一个字符串,该字符串就成为了相关对象的文档字符串例:
>>> def fact(n):
"this function computes a factorial" #文档字符串的缩进必须与定义中的所有其它语句保持一致,且始终是包含在引号中的字符串字面量
if n<=1:
return 1
>>> print(fact.__doc__)
this function computes a factorial
>>> fact(0)
1
装饰器@
必须放在单独的行上并位于对应的函数、方法或类之前,目的是修改定义后面的行为。源代码编码
使用不同的编码编写源代码需在程序第一行或第二行包含一个特殊的编码注释#!/usr/bin/env python
#--*-- coding:UTF-8 --*--