(2)函数的规范
# 函数语法:def 关键字
# 函数名命名规范:小写字母分开,不能以数字开头,不同的字母之前用下划线隔开
# def 函数名(参数1,参数2,参数3...):
# 函数体:要实现的功能
# 调用:函数名()
# print ,input,len,range,int,float,str,list,dict,
# pop,append,insert,keys,split,replace,strip
# remove,clear
例如:
# 自定义函数 def boss(name = ‘fox‘): # 默认参数,不赋值时输出默认参数 print("{0}是大佬".format(name)) # 形参 print("{0}是大佬".format(‘shiguang‘)) #实参 # 调用函数 boss(‘kite‘) boss()
def add(m,n,k=1): i = 1 # i 记录循环次数 sum = 0 # 求和 max = m - k # 记录最后一个值(第一次执行前) for i in range(m,n,k): sum += i i += 1 max += k print(‘{0}+{1}+{2}...+{3}={4}‘.format(m,m+k,m+2*k,max,sum)) add(100,10000,8)
总结:实现函数3步走
# 1.先用代码实现功能
# 2.变成函数 加def
# 3.提高复用性
注意:
# 1.默认参数必须放在位置参数(形参)后面 【def 函数名[参数]中的参数】
# 2.调用函数中的参数赋值,若部分赋值,add(100,k=3)【前提:未赋值的参数,必须有默认参数】
return:调用函数时,返回一个值。return后面的表达式
在函数中,return相当于结束符,表示函数到此为止
例如:
def add_two(a,b): #print(a+b) return(a+b) #print("你猜猜我会打印出来吗") 不能打印 print("你猜猜我会打印出来吗") #可以打印 #add_two(1,3)+10 返回add_two(1,3)的结果是:None,+10会报错 res = add_two(1,3)+10 #return a+b 的结果是4,可以+10
def len_two(list1): print(‘输入的内容为:‘, list1) if len(list1) > 2: list2 = list1[:2:] else: list2 = list1 print(‘输出的内容为:‘, list2) len_two([1]) len_two([1,[1,2],3])
def make_sandwich(a,b): print("你的三明治包含了{0}{1}".format(a,b)) make_sandwich(‘生菜‘,‘鸡蛋‘)
def make_sandswich1(*args): print("你的三明治包含了{}".format(args)) make_sandswich1(‘生菜‘,‘鸡蛋‘,‘培根‘,‘蟹棒‘) # 你的三明治包含了(‘生菜‘, ‘鸡蛋‘, ‘培根‘, ‘蟹棒‘) def make_sandswich2(*args): all = ‘‘ for item in args: all += item all += ‘、‘ print("你的三明治包含了{}".format(all)) make_sandswich2(‘生菜‘,‘鸡蛋‘,‘培根‘,‘蟹棒‘) # 你的三明治包含了生菜、鸡蛋、培根、蟹棒、
def kw_function(**kwargs): print("{}".format(kwargs)) kw_function(x=‘1‘,y=‘2‘) def add_all_num(b=7,*L,a): sum = 0 for item in L: sum += item print(‘b的值‘, b) print(‘和为‘,sum) print(‘a的值‘,a) add_all_num(1,5,10,79,a=7)
例如:区分全局变量与局部变量
a = 1 #全局变量 def add(b): a = 5 # 局部变量 print(a+b) add(10) #10+a=5 print(a) #1
a = 1 #全局变量 def add(b): global a #声明这是一个全局变量 a = 10 print(a+b) add(10) #10+a=5 print(a) #10,相当于给a=1再次赋值a=10
原文:https://www.cnblogs.com/kite123/p/11655874.html