python函数(2017-8-2)详解编程语言

1、

def 函数名(形式参数)
函数体
return “123”

函数执行了return之后就不再执行下面的代码

2、

默认形参实参的位置一一对应
如果要调整位置,指定形参名字

def email(sub,get,bbj): 
print(sub,get,bbj) 
 
rr=email(sub="123",bbj="456",get="777")

 

 

3、函数可以有默认参数

    def dirve(name="")  #name这个有默认参数,有默认参数的应放在无默认参数的后面 
        temp=name+"开车"    #否则报错,无默认参数的必须传参数,有默认参数的可以不传参数 
        return temp 
    ret=drive("you") 
    print(ret) 
    ret=drive("he") 
    print(ret) 
    ret=drive() 
    print(ret)

 

 

    def a1(a): 
        print(a) 
    a1(123) 
    a1("123") 
    a1([11,22,33]) 
    

 

 

4、动态参数

 

1、

def a1(*a):  #动态参数,可以接受多个值 
        print(a,type(a)) #现在a的类型为元组,把你传入的实参当作元组的元素 
    a1(123,3,444,555,[11,22,33])#这里的列表为一个元素

2、

def a2(**b):  #动态参数,接收的参数转换为字典 
        print(b,type(b))#b的类型为字典,传过来的参数转换为字典 
     
    a2(k1=123,k2=345) 
     
     
    def a3(p,*a,**aa) 
        print(p,type(p) 
        print(a,type(a) 
        print(aa,type(aa) 
         
    a3(11,22,33,k1=123,k2=456)#在这里自动把11给p,22,33给*a,把k1=123,k2=456给**a

#**要在*后面,这两个要在一般参数数的后面,而且实参也要按此排序

*,元组,元组的元素
**,字典
一般写法def f1(*args,**kwargs)

3、为动态参数传入 列表、字典、元组

def f1(*args) : 
    print(args) 
li=[11,22,33] 
f1(li) #这样传参数则这个args元组的第一个元素为列表[11,22,33] 
f1(*li) #这样传参数是会把这个列表的每一个元素一一传过去结果会是 
        #这个列表的每一个元素会成为args元组的每一个元素(11,22,33)

 

 

dic f2(**kwargs): 
    print(kwargs) 
dic={"k1":123,"k2":"aas"} 
f2(dic)#这样传参数报错 
f2(k1=dic) #这样传参数会变成kwargs={"k2":{"k1":123,"k2":"aas"}} 
f2(**dic)#要想把dic里的元素一个一个传过去,为kwargs={"k1":123,"k2":"aas"}需要在dic前加**

 

4、变量

 

(1)全局变量

    a = 1234  # 全局变量 
 
 
    def f1(): 
        a = 123  # 这个a为局部变量只有这个函数里才能用 
        print(a) #在这里输出的是局部变量 
    f1() 
    print(a)

 

(2)局部变量

    def f1() 
        a=123 
        print(a)#这个a为局部变量只有这个函数里才能用

 

要想修改全局变量的值需要在全局变量前加global声明一下
例如:

        a = 1234   
        def f1(): 
            global a 
            a = 123   
            print(a)#输出结果为:123 
        f1() 
        print(a)#输出结果为:123 
        

 

以后写全局变量时吧全局变量名写为大写,局部变量的变量名写为小写

总结

 

1、数据类型

 set
  无序的,不重复的集合

 

2、三元运算

  减少代码量

3、深浅拷贝

  str、int
  深浅都一样
  其他
  浅拷贝,最外层
  深拷贝,除了最内层

4、函数

  a.def
  b.函数名
  c.返回值
  1、return
  2、一旦遇到return,函数的剩下代码就不执行了

 

5、参数

  1、形参实参
  2、普通参数,数量一致,一一对应
  3、指定参数,

f1(p="xxx",xx="asd"

  4、默认参数
    放在参数的尾部
  5、动态参数
    *args
    **kwargs
  e、全局变量和局部变量
    全局:
      大写
      修改,global
    局部变量:
      小写,仅仅在代码块中能用

原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/12376.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论