1.计算器思路
a.优先括号内(n个数计算)
b.多括号
c.加减乘除计算
d.用递归做循环
表达式,先操作 乘除,再加减
函数分类
内置函数
自定义函数
导入的函数
函数就是代码块的分解,一般按功能划分
vars() == 当前模块所有变量
‘__doc__’:None
'__name__': '__main__'
'__file__':
all(),接手一个序列,判断,所有值都是真,返回真,否则返回假
any() 只要有一个真就是真
函数编程:
使用邮件函数实现邮件告警
1.def 定义函数的关键字
2.函数名,日后通过函数名调用该函数
3.函数声明,不自动执行,调用后才执行
4,函数的参数
5.函数的返回值
返回值:
1.未明确指定返回值,返回None
2.返回值可以赋值给某个变量
参数:
普通参数
默认参数
动态参数
普通参数类型:
形式参数
实际参数
参数可以有N个,传入指定个数的参数
默认参数:
1.不传,则使用默认
2.默认参数必须放在列表最后
动态参数一
def func (*args):
pass
1.接收多个参数
2.内部自动构造元组
3.序列,*,避免内部构造元组
>>> def dongtai(*args):
... print args
...
>>> dongtai('1',2,3)
('1', 2, 3)
>>> li = (1,2,3,4)
>>> dongtai(li)
((1, 2, 3, 4),)
>>> dongtai(*li)
(1, 2, 3, 4)
>>>
动态参数二:
def func (**kwargs):
pass
>>> def dongtai2(**kwargs):
... print kwargs
...
>>> dongtai2(123)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: dongtai2() takes exactly 0 arguments (1 given)
>>> dongtai2(k1=123)
{'k1': 123}
>>> dic = {'k1':1,'k2':2}
>>> dongtai2(dic)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: dongtai2() takes exactly 0 arguments (1 given)
>>> dongtai2(**dic)
{'k2': 2, 'k1': 1}
动态参数三:
def func (*args,**kwargs):
pass
文件IO处理
obj = open('文件路径','模式')
1.推荐open, python3.0版本后file另有用处,推荐open
2.方法
obj.truncate() 将指针位置后面的截断,只保留指针前面内容
1,获取
2,增加
3.删除