Python学习杂记——函数篇

函数的定义:

#使用关键字 def定义函数
def test():
  print("函数")

#带参数的函数
def test(num1,num2):
  num = num1+num2

#函数设置返回值,直接使用return
def test(num1,num2):
  num = num1+num2
  return num

函数中调用全局变量:
使用global关键字标识

缺省参数:

#默认给参数b一个值,缺省参数只能放在所有参数后面,缺省参数后面不可以再定义参数
def test(a,b=12,c=9):
  return a+b
#调用时第二个参数可以不传如:
test(10)
#如果想修改参数c的数值
test(10,c=11)

不定长参数:

def test(a,*args):
 #在变量前添加*号,代表不定长参数。
#不定长参数实际上是一个元组
#只能放在形参中的最后一位

def test(a,**kwargs):
#在变量前添加**号,代表不定长参数。
#**的不定长参数实际上是一个字典
#在传入实际参数时,拥有变量名的传递给**的不定长参数:
test(10,b=18,c=21)#b和c传入到**kwargs中

元组和字典拆包:

#将元组和字典拆分,取出其中的所有元素
#元组拆包在传递实际参数时在参数前加一个*
#字典拆包在传递实际参数时在参数前加两个*
def test(*args,**kwargs):

a = (12,323,43)
b = {"haha":12,"lala":43}
#调用test方法
test(*a,**b)

函数的递归:
函数通过调用自己的方式,通过函数自身的循环以期望达到某个期许的方式(递归一定要有结束条件,不然会造成死循环)

num = 3

def getNum(num):
    if num > 1:
        return num * getNum(num - 1)
    else:
        return num

print(getNum(num))

匿名函数:

#匿名函数的定义
#变量名 = lambda 参数:表达式
func = lambda x,y:x*y
result = func(2,2)
#匿名函数只能用来操作一些简单的表达式,如果需要比较复杂的表达式应使用普通函数

字符串常用函数:

eval(str)
#功能:将字符串str转换成有效的表达式来执行并返回结算结果

str = "abcdefg abcdefg"
str.find("bc")
#功能:找到查询目标在字符串中左边第一次出现的下标,没有返回-1

str.rfind("bc")
#功能:找到查询目标在字符串中右边第一次出现的下标,没有返回-1

str.count("abcdefg)
#功能:计算查询字符串中出现的次数

str.replace("a","A")
#功能:替换成指定字符串,生成一个新的字符串

str.split(" ")
#功能:切割指定字符,返回一个列表(如果没有传递参数,直接切除不可见字符)

你可能感兴趣的:(python)