# Python 2
Python 2
函数
定义
1.函数代码以def(关键字)开头,后要以圆括号()。
2.参数要在()里面
3.函数内容以冒号开始,并且缩进。
4.return[表达式],结束函数,不带它相当于返回None。
5.函数第一行字符可以用文档字符串-用于存放函数说明
def printme(str):#注意格式,和缩进
print str
return
printme:这是一个自定义函数名(输出)
函数=一个带名字的代码块
调用
1.定义一个函数给了他名称还有参数还有代码块结构。
2.结构好了之后,可以通过另一个函数直接调用执行,也可以通过Python提示符执行。
def show_card(info):
print("这是一个测试")
return
#这是一个定义函数
show_card(info)
#这个就是调用函数
参数
参数分两种:
1.形参(形式参数):在def定义函数中()里面的变量名。它就像一个占字符(占字符就是赖着不走)
2.实参(实际参数):在调用函数时,括号里面填的是真正数据
参数常见的类型:
必备参数
#a和b没有默认值,他们就是{必备参数}
def add(a,b):
return a+b
add(3,5)#正确:传了2个值,a和b都有了
#错误:少传一个,程序都会报错。
关键字参数
好处:不会传错位置,只要记得关键字,
def introduce(name,age):
print(f"我叫{name},今年{age}岁")
#位置参数(必须按照name,age的顺序)
introduce("小明",18)
#关键字参数(点名叫号,顺序随便打乱)
introduce(age=18,name="小明")
默认参数
调用函数时,默认参数值没传入,会被认为是默认值。
好处:是简化调用
def printinfo(name,age=35):#写出函数说明
print "Nme:",name
print "Age" ,age
return
#调用
printinfo(age=50,name="milk")#我明确告诉程序age=50,所以覆盖了age=35
printinfo(name"milk")
#我只告诉程序name=milk
#输出结果是Name:milk age:50 Nme:milk Age=50
#最后一个我只告诉了name,这个时候函数就拿过来用了
不定长参数
好处:我目前看不出来,觉得很繁琐。
函数名写法
1.蛇形命名法:python,标准c,函数式kotlin,rust,zinglang......
2.驼峰法:Java C# Kltin Go......
字典
info={'name':'光头强','year':'28','hobby':'invent'}
#这个就是字典,字典的每个键值都用 :分割,每个键值对之间用逗号,分割,整个字典在{}中。
#写出字典
my_info={'name':'光头强','year':'28','hobby':'invent'}
#定义函数
def show_card(my_info):
print(f "姓名:my_info['name']")
print(f "年龄:my_info['year']")
print(f "爱好:my_info['hobby']")
#[]用来访调用问字典的值
withopen和异常处理
什么是编码?
编码有 ASCII(英文),ANSI(美国),GBK(中国),UTF-8(全球通用)
withopen
非优雅:
a=open("1.py",encoding="utf-8")as f:#打开文件的I/O input out
#假如有一个1.py的文件
print(a.read())
a.close()#python进程存在 则io流在内容中
#造成了不必要的内存开销
优雅的写法:
withopen("2.py",encoding="utf-8")as f
content=f.read()
print(content)
###雅太雅了
with open("log.txt")#打开一个文件
异常处理
我们可以捕捉异常可以使用try/except语句。
try:
<语句>#运行别的代码
except<名字>:
<语句>
except<名字>,<数据>:#如果在try部分发生了'name'异常
<语句>#如果引发了'name'异常,获得附加的数据
else:
<语句>#如果没有异常发生
总结:好困好累救命
不抛弃不放弃

浙公网安备 33010602011771号