基础语法
info
优美优于丑陋,明了优于隐晦简单优于复杂,复杂优于繁杂
扁平优于嵌套,稀疏优于稠密
可读性很重要!
特例亦不可违背原则,即使实用比纯粹更优。错误绝不能悄悄忽略,除非它明确需要如此
面对不确定性,拒绝妄加猜测。
任何问题应有一种,且最好只有一种,显而易见的解决方法。
做优于不做,然而不假思索还不如不做。
很难解释的,必然是坏方法。
很好解释的,可能是好方法。
中文翻译为Python之禅,可以理解为Python语言的设计哲学。
缩进
Python 最具特色的就是使用缩进来表示代码块。不需要使用大括号 。
缩进的空格数是可变的,常见的有 2 个空格、4 个空格、8 个空格。但是同一个代码块的语句必须包含相同的缩进空格数。
后来出台的代码规范 PEP 8,建议使用 4 个空格作为缩进。
test.py
if True:
print ("True")
else:
print ("False")
info
注释
注释是代码中不会被 Python 解释器执行的文本。用于解释代码,方便阅读。
Python 支持单行注释和多行注释。
test.py
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# 在过去,需要 py 文件编码声明 utf-8 才能正常显示中文,不过现在只有使用其他编码(如 GBK)时才需要声明。
# 单行注释使用#号,可以单独一行写在代码上方
a = 1
b = 2 # 也可以写在代码后面
"""
多行注释使用三个双引号。
通常写在代码文件的最上方,描述这个代码文件的用途。
或者写在函数、方法内,描述这个函数、方法的用途。
"""
# 在函数、类、方法中,可以使用三个双引号添加注释,这样的注释称为文档字符串(docstring)。
# 可以被正确解析为函数的属性。
# 在 docstring 前后都没有空行。
# 即便只有一行,也推荐这样写,这使得以后扩展它变得容易。
# 单行文档字符串不应是重复函数/方法参数的“签名”,最好写一些有用的信息,例如功能、参数的含义、返回值的含义。
def add_numbers(a,b):
"""
实现一个求和的函数
:param a: 第一个数
:param b: 第二个数
:return: 两数之和
"""
return a+b
print(add_numbers.__doc__)
# 输出:
# 实现一个求和的函数
# :param a: 第一个数
# :param b: 第二个数
# :return: 两数之和
class Person:
"""Person类,描述一个Person对象"""
def __init__(self, name, age):
"""初始化一个Person对象"""
pass
print(Person.__doc__)
# 输出:
# Person类,描述一个Person对象
print(Person.__init__.__doc__)
# 输出:
# 初始化一个Person对象
info
如果你违反这些惯例,最坏的结果也不过是招来一些不友好的目光。
但有些软件(如 PEP 256 和 PEP 258 的 Docutils 文档字符串处理系统)会知晓这些惯例,因此遵循它们将为你带来最佳效果。