Python Note 1
Python Note 1
-
逻辑运算符的使用:
-
and or not 会将几个值作为False :0 None “” []
-
多变量赋值
minValue, maxValue = 10 , 20 |
-
命名规范
-
变量名,函数名: 小驼峰或下划线小写的形式
-
常量:全大写
-
类名:大驼峰
-
代码换行:
-
当一行写不完时,使用 \ 将代码延续
product = max(100,200) \ |
- 输出:
- 以% 输出
- 字符宽度指定:“%3d” 右对齐数字, “%-3d”左对齐数字。换成s则为字符串。
- 小数精度指定:%<field_width>.
f ,注意字符宽度将包含.
a = 10 |
-
自动转义的函数
-
“greater”.len() 等价于len(“greater”)
-
“a”+“b” 等价于"a".add(“b”)
-
“e” in “great” 等价于 “great”.contains(“e”)
-
==获取对象可用函数列表==
-
dir(str)
-
==获取函数文档==
-
help(str.upper)
-
以独立程序加载的python文件
-
使用“main”标记为模块name的名字
if __name__ == "__main__" |
-
while结构
注: “”" 多行string
n = 0 |
-
For结构
- 普通使用
for i in range(5): |
- Use curly braces, 显示变量
for i in range(5): |
- 使用重复*个数输出字符
for i in range(5): |
-
List
- 注意List的切片和连接运算符返回的就是一个新的数组
- 普遍用法
names = ['John', 'Bob', 'Mosh', 'Sarah', 'Mary'] |
- 编辑类
numbers = [5,2,1,7] |
-
Tuple
- 类似于List,但不可修改
numbers = (5,20,1,5,7,5,6,4,5) |
-
Unpacking
- 映射数组成员
coordinates = (1,2,3) |
-
Dictionary
customer = { |
-
[mac]ctrl+cmd+space>> to show emojis
-
函数
-
注释:
-
三个引号的注释,意为文档注释,使用help函数时显示
-
无返回函数,默认返回为None
-
递归函数:
-
输出的小技巧:使用“ ” * 递归序号的形式生成缩进的日志,这样就有一个层级的输出结构了。
-
函数之中也可嵌套函数!
-
高阶函数:filter函数与map函数,reduce函数
-
map将第二个列表中的值放到第一个参数的函数中逐个执行。最后把结果映射成map出来
-
filter将把第二个列表中的值逐个放到第一个参数的函数中进行运算得出 True的放到一个结果里。
-
reduce函数是每一个参数是一个带双参的函数,第一个参为下一项,第二参为上一次的结果。
def is_no_zero(v): |
- lambda做内联函数
# lambda x,y:x+y |
- 使用pickle 读写对象
- 文件读写类型如:
模式 描述
t 文本模式 (默认)。
x 写模式,新建一个文件,如果该文件已存在则会报错。
b 二进制模式。
+ 打开一个文件进行更新(可读可写)。
U 通用换行模式(不推荐)。
r 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
rb 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。一般用于非文本文件如图片等。
r+ 打开一个文件用于读写。文件指针将会放在文件的开头。
rb+ 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。一般用于非文本文件如图片等。
w 打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb 以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。
w+ 打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb+ 以二进制格式打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等。
a 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
ab 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
a+ 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
ab+ 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。
|
- 常用三种运算符说明
- //运算符执行地板除法(向下取整除),它会返回整除结果的整数部分
print(7//2)
#3
这里整除后会返回3.5
- 同样的,执行取幂运算,ab会返回a的b次方
print(2**10)
#1024
- 最后,%执行取模运算,返回除法的余数
print(13%7)#6 |
-
使用Profiler探测
- 安装Profiler库
- 度量算法性能。