False, None, True # 大写三个
assert '生效', def , lambda, nonlocal,
pass, break, continue, return...等 # 30个小写
在Python中为一个变量赋值的同时就声明了该变量,该变量的数据类型就是赋值数据所属的类型,该变量还可以接收其他类型的数据。(可以多重赋值)
变量由三部分组成:
在Python中,一行代码表示一条语句,在一般情况下语句结束时不加分号。
在使用#(井号)时,#位于注释行的开头,#后面有一个空格,接着是注释的内容。
多行注释:通常使用三引号进行注释‘’‘ ’‘’。
在Python中一个模块就是一个文件,模块是保存代码的最小单位
在模块中可以声明变量、函数、属性和类等Python代码元素
# 通过这种方式会导入m2模块的所有代码元素,在访问时需要加相应的前缀,如“m2.”
import<'模块名'>:
# 通过这种方式会导入m2中的x变量,在访问时不需要加前缀“m2”
from<'模块名'>import<'代码元素'>:
# 可以给要导入的代码元素(m2中的x)一个别名x2
from<'模块名'>import<'代码元素'>as<'代码元素别名'>:
Python中的数字类型有4种:整数类型(无小数点)、浮点类型 、复数类型、布尔类型(True/False ),布尔类型也是数字类型,它事实上是整数类型的一种。
# 默认为十进制、包含二进制、八进制、十六进制 # 前面+(int )转为十进制
0b() (0为阿拉伯数字及英文字母B或b)为二进制开头 # 前面+(bin)转为二进制
0o() (0为阿拉伯数字及英文字母O或o)为八进制 # 前面+(oct)转为八进制
0x() (0为阿拉伯数字及英文字母X或x)为十六进制 # 前面+(hex)转为十六进制
round(a,x) 数学函数进行四舍五入,其中a是对象,x是四舍五入保留几位小数
在Python的数字类型中,除复数外,其他三种数字类型如整数、浮点和布尔都可以相互转换,分为隐式类型的转换和显式类型的转换。
range()函数通常输出最后一位为"stop-1",不包括‘stop’,三种创建方式:
range(stop) # 默认从0开始到 stop-1 的位置
range(start,stop) # range(1,5) 表示1-4的序列,中间用逗号
range(start,stop,step)
可以生成随机浮点数、整数、字符串,甚至帮助你随机选择列表序列中的一个元素,打乱一组数据等:
random.randint() # 随机生一个**整数int类型**,可以指定这个整数的范围,同样有上限和下限值
random.choice() # 随机从字符,列表,元组中取出一个元素
算术运算符用于组织整数类型和浮点类型的数据,有一元运算符(+/-)和二元运算符之分:
+, -, *, / # (加减乘除)
% # (取余数)
** # (求a的b次幂)
// # (求小于a与b的商的最大整数, 注意负数的取余,一正一负,向下取余)
比较运算符用于比较两个表达式,其结果是布尔类型的数据,即True或False:
# is表示是否存储在同一地址文件
[==, !=, >=, >, <, <=, is, is not, not True]
逻辑运算符用于对布尔型变量进行运算,其结果也是布尔型(True/False), 逻辑运算符有短路特征, 掐断后续运算:(可做短路验证)
# not 逻辑非, not a 判断时根据a值是否为False进行判断
# and 逻辑与(且), 同时为true才为true
# or 逻辑或, 有一个为or, 结果为true
[not, and, or, in, not in]
位运算是以二进位(bit)为单位进行相互比较运算的,操作数和结果都是整数类型的数据。
# ~ 位反 ~x 将x的指按位取反
# & 位与 x&y 将x与y的值按与计算
# | 位或 x|y 将x与y的值按或计算
# ^ 位异或 x^y 将x与y的值按异或计算
# >> 右移 x>>y 将x右移a位,高位采用符号位补位 数值变小
# << 左移 x<
+= # 加赋值 a+=b
-= # 减赋值 a-=b
*= # 乘赋值 a*=b
/= # 除赋值 a/=b
%= # 取余赋值 a%=b 在原值上取余
**= # 幂赋值 a**=b 在原值上取幂
//= # 地板除法 a=a//b 取商的整数值
&= # 位与赋值 a=a&b
|= # 位或赋值 a=a|b
^= # 位异或赋值 a=a^b
<<= # 左移赋值 a=a<>= # 右移赋值 a=a>>b'''
# 1.小括号
()
# 2.算数运算
** # 几次方
~ # 位反 (奇怪的算法) {~a=(a+1)*-1}
+, - # 正负
*/%//
+, - # 加减
# 3.位运算
>> << # 位移
& # 位与 ( and )
^ # 位或与
| # 位或 ( or )
# 4.比较运算
<, <=, >=, <>, !=, ==
not # 逻辑非
# 5.布尔运算
and, or # 逻辑与、逻辑或
# 6.赋值运算符
=
input输入文件类型为字符串类型(str), 如果需要计算需要对其进行转换, 赋值运算符为从右向左赋值。
a=b=c=20 # 支持链式赋值
a+=20 # 支持参数赋值
a,b,c=1,2,3 # 支持解包赋值, 元组对元组, 元组对列表也可赋值
对象None用于表示数据值的不存在,但在内存中占用一定的空间, 经常用于变量的初始化,或将变量重置为 "数据不存在状态", 主要用于 重置为数据值不存在状态。
1996年,计算机科学家证明了这样的事实:**任何简单或复杂的算法**都可以由**顺序结构**、**选择结构**、**循环结构**这三种基本结构组合而成。
5.1.1 if结构
必须以英文冒号结尾, 如果满足就执行,否则结束, if语句,下一行用四个半角空格。
5.1.2 if-else结构
x if '判断条件' else y # 条件表达式
5.1.3 if-elif-else结构
elif可以有多次使用,完成多次循环, 可以没有else, 但一个if条件语句下只能使用一个else。
5.1.4 嵌套if
可以相互嵌套使用。
5.15 pass语句
该语句什么都不做,只是一个占位符。
Python支持两种循环语句:while和for:
5.2.1 while语句
四步循环法:初始化变量、 条件判断、条件执行体(循环体)、改变变量。
break, return # 有异常会打断程序
print() # print输出时中间可以用逗号取代加号,但中间会留空格
# 且加号只能用于类型相同的数据类型,类型不同时只能用逗号分隔
5.2.2 for语句
for ... in ... 表达从(字符串、序列等)中依次取值,又称为遍历, 如果不需要使用自定义的变量,可以将自定义变量写为“_”,只执行循环次数。
break, return # 有异常会打断程序,不会通过else语句
for '变量' in '集合': # 可迭代对象(包含字符串、列表、元组、集合和字典等)
{i*i for i in range(a, b)} # 用于遍历
跳转语句能够改变程序的执行顺序,包括break、continue、raise、return(函数和方法时使用)。 # break和continue用于循环体中,而return用于函数中
'break语句'
if '条件':
break # break语句用于强行退出循环体,通常与分支结构if一起使用
'continue语句'
for i in range(x):
if '某条件':
continue # continue用于结束本次循环,跳过未执行的语句,继续下一次循环
'raise'
raise Exception # 主动抛出自定义异常,抛出异常后,程序会全部退出,后续不再执行
'return'
def ass:
return 'xxxx' # return 直接跳出函数, (用于函数中)