标签:开发效率 内置函数 define 地址 error login input 返回 申请
函数是具备某一功能的工具。
函数的定义是准备这个工具的过程。
函数的调用就是使用工具。
(1)提升开发效率
(1)为了增强程序的组织结构性、提升可读性;
(2)减少代码冗余;
(3)提升程序的可维护性与扩展性。
PS:自定义函数是把程序中实现某一功能的代码组织整理到一起
先定义,后调用。
def 函数名(参数1,参数2,参数3):
‘‘‘
文档注释
‘‘‘
代码1
代码2
代码3
。。。。。。
return 值
函数名(值1,值2,值3)
x = 10 # x = 存放值10的那个内存空间的内存地址
print(x)
def login(): # login = 存放代码的那个内存空间的内存地址
name = input("your name>>: ")
pwd = input("your pwd>>: ")
role = input("your role>>: ")
if name == "egon" and pwd == "123" and role == "amdin":
print(‘login successful‘)
else:
print("user or password error")
print(login) # <function login at 0x0000017D687C53A0>
x = 10
x() # TypeError: ‘int‘ object is not callable 整型不可被调用 是逻辑错误,没有语法错误
函数的使用分为两个阶段:
(1)定义阶段:申请内存空间把函数体代码放进去,然后把内存地址绑定给函数名。
(2)调用阶段:通过函数名找到函数体代码,加括号触发函数体代码运行。
注意:定义阶段只识别语法、不执行代码,只有在调用阶段才会执行代码!
def func():
xxx
func() # NameError: name ‘xxx‘ is not defined
#!强调!:定义阶段只识别语法不执行代码,调用阶段执行代码报错
示例1:
def f2():
print("from f2")
def f1():
print("from f1")
f2()
f1() # from f1 \n from f2
示例2:
def f1():
print("from f1")
f2()
def f2():
print("from f2")
f1() # from f1 \n from f2
def login():
name = input("your name : ")
pwd = input("your name : ")
role = input("your role : ")
if name == "egon" and pwd == "123" and role == "admin":
print("login successful")
else:
print("user or password error")
login() # 调用函数
def max2(x, y):
if x > y:
print(x)
else:
print(y)
max2(11, 2222) # 2222
def login():
"""登录功能"""
pass
def register():
pass
def transfer():
pass
def max2(p1_msalary, p2_msalary):
if p1_msalary > p2_msalary:
return p1_msalary
else:
return p2_msalary
x = max2(10, 11)
print(x * 12)
print("hello world") # 调用内置函数print
max2(10,11)
x = max2(1, 2)
res = max2(1, 2) * 12
print(res)
print(max2(1, 2))
res = max2(max2(10, 11), 12)
print(res)
return是函数结束的标志,函数内可以有多个return,函数体代码但凡运行到一个return,就会立即终止整个函数的运行,然后将return后的值当作本次调用的产品返回。
默认返回的是None。
def func():
# return None 属于多此一举,本身就默认了返回None
pass
res = func()
print(res) # None
返回的就是这一个值。
def func():
return 123
res = func()
print(res) # 123
返回一个小元组(值1, 值2, 值3)
def func():
return 123, "abc", 3.1
res = func()
print(res) # (123, ‘abc‘, 3.1)
在定义函数阶段,括号内指定的参数,称之为形式参数,简称形参。形参相当于定义在函数内的变量名,用于接收外部传进来的值。
def func(x,y):
# x=10
# y=11
print(x)
print(y)
在调用函数阶段,括号内传入的值,称之为实际参数,简称实参,实参相当于变量值,用于为形参赋值的。
func(10,11)
在函数调用时,会将实参的值绑定给形参,这种绑定关系只能在函数内使用,在函数调用完毕后,实参会与形参解除绑定,回收占用的内存空间。
标签:开发效率 内置函数 define 地址 error login input 返回 申请
原文地址:https://www.cnblogs.com/huluhuluwa/p/13138632.html