#号为单行,三引号为多行
运算符加减乘除比较简单,有几种特殊的需要注意
| 操作符 | 名称 | 示例 |
|---|---|---|
| // | 整除 | 3//4==0 |
| % | 取余 | 3%4==3 |
| ** | 幂 | 2**3==8 |
| and | 与 | |
| or | 或 | |
| not | 非 |
其中位运算符使用较少,但是比较重要,如果使用得当能简化运算
| 操作符 | 名称 | 示例 |
|---|---|---|
| ~ | 按位取反 | ~4 |
| & | 按位与 | 4 & 5 |
| ` | ` | 按位或 |
| ^ | 按位异或 | 4 ^ 5 |
| << | 左移 | 4 << 2 |
| >> | 右移 | 4 >> 2 |
Python中的三元运算符比较好理解
x, y = 4, 5 small = x if x < y else y print(small) # 4
其他运算符
| 操作符 | 名称 | 示例 |
|---|---|---|
| in | 存在 | 'A' in ['A', 'B', 'C'] |
| not in | 不存在 | 'h' not in ['A', 'B', 'C'] |
| is | 是 | "hello" is "hello" |
| is not | 不是 | "hello" is not "hello" |
注意:
- is, is not 对比的是两个变量的内存地址
- ==, != 对比的是两个变量的值
- 比较的两个变量,指向的都是地址不可变的类型(str等),那么is,is not 和 ==,!= 是完全等价的。
- 对比的两个变量,指向的是地址可变的类型(list,dict,tuple等),则两者是有区别的。
对于运算符优先级的问题,我建议多使用括号,减少不必要的麻烦。
变量和赋值问题不大
数据类型与转换整形
浮点型
可以通过decimal.getcontext()来保存小数点后n位
布尔型
print()函数print(*objects, sep=' ', end='n', file=sys.stdout, flush=False)
- 将对象以字符串表示的方式格式化输出到流文件对象file里。其中所有非关键字参数都按str()方式进行转换为字符串输出;
- 关键字参数sep是实现分隔符,比如多个参数输出时想要输出中间的分隔字符;
- 关键字参数end是输出结束时的字符,默认是换行符n;
- 关键字参数file是定义流输出的文件,可以是标准的系统输出sys.stdout,也可以重定义为别的文件;
- 关键字参数flush是立即把内容输出到流文件,不作缓存。
assert 关键词 我们称之为断言,当这个关键词后面的条件为False时,程序自动崩溃并抛出AssertionError的异常
3.循环语句 1.while略。
2.while-else循环当while循环正常执行完的情况下,执行else输出,如果while循环中执行了跳出循环的语句,比如 break,将不执行else代码块的内容。
3.for循环for 迭代变量 in 可迭代元素4.for-else 循环
同 while-else元素
5.range()函数range([start,] stop[, step=1])
- 这个BIF(Built-in functions)有三个参数,其中用中括号括起来的两个表示这两个参数是可选的。
- step=1 表示第三个参数的默认值是1。
- range 这个BIF的作用是生成一个从start参数的值开始到stop参数的值结束的数字序列,该序列包含start的值但不包含stop的值。
for i in range(2, 9): # 不包含9
print(i)
# 2
# 3
# 4
# 5
# 6
# 7
# 8
6.enumerate()函数
enumerate(sequence, [start=0])
- sequence:一个序列、迭代器或其他支持迭代对象。
- start:下标起始位置。
- 返回 enumerate(枚举) 对象
seasons = ['Spring', 'Summer', 'Fall', 'Winter'] lst = list(enumerate(seasons)) print(lst) # [(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')] lst = list(enumerate(seasons, start=1)) # 下标从 1 开始 print(lst) # [(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]7.break语句
略。
8.continue语句略。
9.pass语句空语句,防止报错
10.推导式[ expr for value in collection [if condition] ]
可以按照规则生产你想要的列表、元组或者字典
异常处理 1.Python 标准异常总结 2.Python标准警告总结 3.try-excepttry:
检测范围
except Exception[as reason]:
出现异常后的处理代码
try 语句按照如下方式工作:
- 首先,执行try子句(在关键字try和关键字except之间的语句)
- 如果没有异常发生,忽略except子句,try子句执行后结束。
- 如果在执行try子句的过程中发生了异常,那么try子句余下的部分将被忽略。如果异常的类型和except之后的名称相符,那么对应的except子句将被执行。最后执行try - except语句之后的代码。
- 如果一个异常没有与任何的except匹配,那么这个异常将会传递给上层的try中。
try: 检测范围 except Exception[as reason]: 出现异常后的处理代码 finally: 无论如何都会被执行的代码
5. try - except - else 语句
如果在try子句执行时没有发生异常,Python将执行else语句后的语句。
try:
检测范围
except:
出现异常后的处理代码
else:
如果没有异常执行这块代码
6.raise语句
Python 使用raise语句抛出一个指定的异常。



