深入理解Python基础语法:标识符、保留字及变量命名规则详解
目录

1. 基本语法 1.1 Python 标识符
在 Python 中,标识符由字母、数字和下划线组成。但它不能以数字开头。Python 中的标识符区分大小写。
以下划线开头的标识符具有特殊含义:
单下划线_foo:不能直接访问类属性,但需要通过类提供的接口来访问,不能使用 from xxx import * 来导入。
带有双下划线的 __foo 表示类的私有成员,以双下划线开头和结尾的 __foo__ 表示 Python 中特定于方法的特殊标识符,例如__init__() 表示类的构造函数。
变量命名:
Python 可以使用分号在同一行上显示多个语句;间隔开,例如
print ('hello');print ('runoob')
1.2 python 的保留字
保留字不能用作常量或变量,也不能用作任何其他标识符名称。Python 中的关键字仅包含小写字母。下表显示了 Python 中的保留字。
1.3 行和缩进
Python 和其他语言的最大区别在于 Python 代码块不使用花括号 {} 来控制类、函数和其他逻辑决策。Python 最显着的特点是模块是以缩进方式编写的。对缩进有严格的要求(对于相同的缩进,所有代码块语句必须包含相同数量的空格)。
if True:
print ("Answer")
print ("True")
else:
print ("Answer")
print ("False") # 没有严格缩进,在执行时会报错
1.4 多行语句
在 Python 语句中,新行用作语句的结束字符。您还可以使用斜杠 \ 将一行的语句拆分为多行
total = item_one + \
item_two + \
item_three
\n实施换行符。用户按 Enter 键退出后,将显示其他键。
如果语句包含 []、{} 或 () 括号,则无需使用多行连接器
days = ['Monday', 'Tuesday', 'Wednesday',
'Thursday', 'Friday']
Python 可以使用单引号 (')、双引号 (“)、三引号 (''' 或 ”“”“) 来表示字符串;
(''') 可以由多行组成,通常用于文本注释(单引号 ''' 或三个双引号 “”)。
print 的默认输出是换行符,并在变量末尾添加逗号以实现换行
x="a"; y="b"
print x # 换行输出
print y
print '---------'
print x, # 不换行输出
print y,
print x,y # 不换行输出
1.5 python 中的空行
那里
是函数之间或类的方法之间的空行,以及类和函数条目之间的空行,用于突出显示函数条目的开头。空行与代码缩进不同,代码缩进不是 Python 语法的一部分。不会插入空行,并且 Python 解释器可以正常运行。但是,空行的作用是将两段功能或含义不同的代码分开,以便代码可以维护或重构。
1.6 多个语句组成一个代码组
代码组:缩进同一组语句以形成代码块(组)。
复合语句,如 if、while、def 和 class,其中第一行以关键字开头,以冒号 ( : ) 结尾,后跟构成代码组的一行或多行代码。我们将第一行和后面的一组代码称为子句。
if expression :
suite
elif expression :
suite
else :
suite
Python 可以使用 -h 参数查看每个参数的帮助信息:terminal input: python -h
2. 操作员
Python 语言支持以下类型的运算符:
浮点数(根据 IEEE754 标准),其中内存中浮点数的表示形式存在小误差。
2.1 算术运算符 (+-*/)。
Integer / Integer :结果可以是小数
%:余数(余数必须小于除数)。
: 向下取整除法(向下舍入)较小,例如 7 // 2 = 3;-7 // 2 = -4
print(4**2) #**表示乘方=16
print(4**0.5) # 也可表示根号
print(4**4) #**表示乘方=256
2.2 关系运算符
关系表达式的值为 Boolean 类型 (true/false)。
字典顺序:也可以比较(字母前面的字母相当于一个较小的值,如果 ·:hello < world,则输出为 true)。
注意!! print(0.1+0.2 == 0.3),输出 false
判断 a-b 的差值是否是一个非常小的数字,是否在误差范围内(python 支持连续小于写入,其他语言不支持)。
print(-0.000001 < (a -b)< 0.000001)
2.3 赋值运算符
Python 不支持 ++(--) 之类的自递增和自递减操作。(--apython 是 a (负数 负数 表示 正数))。
链式赋值 (a = b = 20,先将 20 分配给 b,然后将 b 分配给 a)。
多元赋值,一步完成交换:
a = 1
b = 2
a,b = b,a
print(a,b) # 输出 2 1
2.4 位运算符
2.5 逻辑运算符
and:两个必须为 true(一个 false 为 false)。
或者:一个 true 就是 true
a = 10
b = 20
c = 30
print(a < b and b < c) #True 等同于print(a < b < c)
print(a < b and b > c) # False
print(a > b or b < c) # #True
print(a < b or b > c) # #True
print(a > b or b > c) # False
短路评估:
大多数语言都有短路求值,例如 C/C++/Java
For and 操作:如果左侧为 false,则 whole 必须为 false,并且不必计算右侧表达式
对于 OR 运算:如果左侧为 true,则 whole 必须为 true
a = 10
b = 20
print(a > b and 10 / 0 == 1) # (短路求值)输出false,因为a > b不成立为假,故整个表达式为假,不执行后面操作,故输出false
print(a < b and 10 / 0 == 1) # 编译报错,右边除数不能为0 a < b 成立,继续判断右边表达式是否成立,
2.6 成员操作员
2.7 身份运算符
2.8 运算符优先级
3. python 模块介绍
这
Python 中数学运算中常用的函数基本上在 math 和 cmath 模块中。math 模块为浮点数提供了许多数学函数。cmath 模块包含许多用于复数运算的函数。要使用 math 或 cmath 函数,必须首先导入:import math/cmath
3.1 Python 数学函数:
var1 = 'Hello World!'
var2 = "Python Runoob"
print ("var1[0]: ", var1[0])
print ("var2[1:5]: ", var2[1:5])
3.2 随机函数
随机数可以用于数学、游戏、安全等领域,并且经常嵌入到算法中,以提高算法的效率,提高程序的安全性。
3.3 字符串转义字符
Python 不支持单字符类型,这些类型在 Python 中也用作字符串。Python 访问子字符串,可以使用方括号截断子字符串
当需要在字符中使用特殊字符时,Python 使用反斜杠\转义字符
3.4 Python 字符串格式化
格式字符串:f - 字符串(f 表示格式)。
a = 10
b = "'hello' python!!!"
c = 'hello "python"'
print(b,c) # 'hello' python!!! hello "python"
print(f"a = {a}") # 输出 a = 10
print(f"b = {b}") # 输出b = 'hello' python!!!
print(f"b = {b+c}") #'hello' python!!!hello "python"
Python 支持格式化字符串的输出。但最基本的用途是使用字符串格式化程序 %s 将值插入字符串中。
print ("My name is %s and weight is %d kg!" % ('Zara', 21)) #My name is Zara and weight is 21 kg!
python 字符串格式化符号: