##import random
--random.choice() 序列中随机选择一个值
--random.randnt()生成范围内的随机整数
--random.random()生成随机浮点数
--random.shuffle()打乱顺序
--random.getrandbits()生成指定bit位数的随机数
--random.sample()获取指定数目的序列
##import random
--random.choice() 序列中随机选择一个值
--random.randnt()生成范围内的随机整数
--random.random()生成随机浮点数
--random.shuffle()打乱顺序
--random.getrandbits()生成指定bit位数的随机数
--random.sample()获取指定数目的序列
单元测试:
测试级别
--单元测试
---对代码最基本单元(函数,方法)的测试
---给予特定条件判断结果是否符合预期
---相对整个程序的测试,单元测试简化了测试任务
---
--集成
--系统
--验收
--回归
self的运用
继承:
多态:
同一类型的不同实例
不同响应
def func( 单个参数比如啊,a,b,c 如果只是想传值加上*args, 关键字参数 *keyword
lambda+ 需要的参数
lambda只是表达式需要赋值到变量
##委托##
将一个函数传递给另一个参数
##hello(action,name)
通过hello执行
##lambda name:print('...',name)
把一个函数当作另一个函数的参数来传递##
l=list(range(1,21)) result=[] #使用循环 # for n in l: # if n%2==0: # result.append(n) #使用推导 # result=[x for x in l if x%2==0] #使用map() print(result)
l=list(range(1,21)) result=[] def add_number(x): return x+5
res=list(map(add_number,l)) print(res)
使用推导与map比较高效
高级工具
--map(函数,可迭代对象)
--filter(函数,可迭代对象)
def +函数():
#def__定义#
目的:最大化代码重用,最小化代码冗余,过程分解
形式函数与实际函数
定义:
def方法名(参数1,...):函数体
调用:函数名(实际函数)
变量定义域:
local 本地
global 全局
built-in
enclousure
##nested()#
参数:
传递
不可变类型(int,浮点型,字符串型,tuple元组):当传递副本给函数,函数内操作不影响原始值
直接引用
可变类型(列表,字典表):传递地址引用,函数内操作,
double引用
a=Y if X else Z
while语句:
--一般格式
--braek
--pass
--continue
--else
1、字典表:
花括号:d={'name':'tom','age':20,job:'dev',gender:male}
d['name']
tom
2、list可以修改赋值
但是元组不可
3、首先声明即赋值
4、重新赋值之后第一位会被抛弃
5、’{}‘是表示字符,与{}不同,’{0}‘是占位符,相当于代词
’f={0}‘.formart(f)
6、格式化:’{0:。2f}‘.formart(3.333333) 保留两位小数
7、除法里10/4=2.5, 10//4=2
‘/’是除,‘//’是整除
8、
【1】
import math
math.floor(3.4)
3
math.floor(-3.4)
-4
math.floor 均是往左移
【2】
round() 是四舍五入
9、
二进制0b
0b0
0
0b1
1
八进制
0o
十六进制
0x
0xa
10
19、转换
oct()
hex()
bin()
20、decimal.decimal可以加入精度
21、声明:'.....' "....." """ ....."""--语句
22、转义符
原始字符串:r‘.....’ r是raw的意思
23、
256以下的数字都使用同一个数值
256以上的每个是分开的
检索有多少变量同用一个数据
import sys
sys.getrefcount()
调用运行python时候
交互式提示符使用: console
保留文件的时候首尾加上“”
保留结果
python*py>result.txt