Python 标识符
在 Python 中,所有标识符可以包括 英文、数字以及下划线(_),但不能以数字开头。(Python 中的标识符是区分大小写的。)
以下划线开头的标识符是有特殊意义的:
- 以单下划线开头
_foo
表示的是 protected 类型的变量,即保护类型只能允许其本身与子类进行访问,不能用from xxx import *
而导入。 - 以双下划线开头的
__foo
代表类的私有成员(private),只能允许这个类本身进行访问 - 以双下划线开头和结尾的
__foo__
代表 Python 里特殊方法专用的标识,如 init() 代表类的构造函数。
Python 可以同一行显示多条语句,方法是用分号 ; 分开,如:
>>> print ('hello');print ('runoob');
hello
runoob
Python 保留字符
下面的列表显示了在Python中的保留字。这些保留字不能用作常数或变数,或任何其他标识符名称。
所有 Python 的关键字只包含小写字母:
and | exec | not |
---|---|---|
assert | finally | or |
break | for | pass |
class | from | |
continue | global | raise |
def | if | return |
del | import | try |
elif | in | while |
else | is | with |
except | lambda | yield |
行和缩进
学习 Python 与其他语言最大的区别就是,Python 的代码块不使用大括号 {}
来控制类,函数以及其他逻辑判断。python 最具特色的就是用缩进来写模块。
缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。
以下实例缩进为四个空格:
实例:
if True:
print ("True")
else:
print ("False")
以下代码将会执行错误:
实例:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
# 文件名:test.py
if True:
print ("Answer")
print ("True")
else:
print ("Answer")
# 该代码组没有严格缩进,在执行时会报错
print ("False")
执行以上代码,会出现如下错误提醒:
File "C:\Users\Angel\AppData\Roaming\JetBrains\PyCharmCE2020.3\scratches\test.py", line 7
print ("False")
^
IndentationError: unindent does not match any outer indentation level
IndentationError: unindent does not match any outer indentation level 错误表明,你使用的缩进方式不一致,有的是 tab 键缩进,有的是空格缩进,改为一致即可。
如果是 IndentationError: unexpected indent 错误, 则 python 编译器是在告诉你"Hi,老兄,你的文件里格式不对了,可能是tab和空格没对齐的问题",所有 python 对格式要求非常严格。
因此,在 Python 的代码块中必须使用相同数目的行首缩进空格数。
建议你在 每个缩进层次 使用 单个制表符 或 两个空格 或 四个空格 , 切记不能混用(以防未对齐)
实例:
print("测试")
if True:
print ("True")
print ("Answer")
else:
print ("Answer")
# 在else这个代码组内,缩进层次已对齐,所以不会报错
print ("false")
print("测试完成")
虽然代码运行通过,可是 if 与 else 之后对应的语句不是同一个缩进层次,不美观。
多行语句
Python语句中一般以新行作为语句的结束符。
但是我们可以使用斜杠( \)将一行的语句分为多行显示,如下所示:
a = 1
b = 2
c = 3
Sum = a + \
b * \
c
print(Sum)
语句中包含 [], {} 或 () 括号就不需要使用多行连接符。如下实例:
days = ['Monday', 'Tuesday', 'Wednesday',
'Thursday', 'Friday']
Python 引号
Python 可以使用引号( ’ )、双引号( " )、三引号( ‘’’ 或 “”" ) 来表示字符串,引号的开始与结束必须是相同类型的。
其中三引号可以由多行组成,编写多行文本的快捷语法,常用于文档字符串,在文件的特定地点,被当做注释。
word = 'word'
sentence = "这是一个句子。"
paragraph = """这是一个段落。包含了多个语句"""
# 以上的定义可以用下面的代替,3引号略有不同
word = 'wo' \
'rd'
sentence = "这是" \
"一个句子。"
paragraph = """这是一个段落。
包含了多个语句"""
运行结果如下:
word
这是一个句子。
这是一个段落。
包含了多个语句