• 寒假第十八天


    今天学了python函数调用 跟Java的差不多

    def printme(str):
        "打印任何传入的字符串"
        print(str)
        return
    
    
    # 调用函数
    printme("我要调用用户自定义函数!")
    printme("再次调用同一函数")

     首先先定义一个函数

               def 函数名(变量):

            return //结束函数

    然后调用

    传不可变对象实例

    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    
    def ChangeInt(a):
        a = 10
        print(a)
    
    b = 2
    ChangeInt(b)
    print (b) 

    这里调用changeInt()函数 ,这个函数里的值是确定的。传个其他值不改变本来值的结果

    传可变对象实例

    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    
    # 可写函数说明
    def changeme(mylist):
        "修改传入的列表"
        mylist.append([1, 2, 3, 4])
        print("函数内取值: ", mylist)
        return
    
    
    # 调用changeme函数
    mylist = [10, 20, 30]
    changeme(mylist)
    print("函数外取值: ", mylist)

    mylist.append 是添加列表元素

    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
    
    # 可写函数说明
    def printinfo(name, age):
        "打印任何传入的字符串"
        print("Name: ", name)
        print("Age ", age)
        return
    
    
    # 调用printinfo函数
    printinfo(age=50, name="miki")
    printinfo("name",1)

     

    两种调用函数 都可以

    不定长参数

    加了星号(*)的变量名会存放所有未命名的变量参数

    #!/usr/bin/python
    # -*- coding: UTF-8 -*-
     
    # 可写函数说明
    def printinfo( arg1, *vartuple ):
       "打印任何传入的参数"
       print "输出: "
       print arg1
       for var in vartuple:
          print var
       return
     
    # 调用printinfo 函数
    printinfo( 10 )
    printinfo( 70, 60, 50 )

    这里就是for 循环将*vartuple循环的输出出来

    匿名函数

    就是

    lambda [arg1 [,arg2,.....argn]]:expression
    这种结构的 agr是变量 :后面是表达式
    调用的话lambda相当于函数名
  • 相关阅读:
    个人总结21
    个人总结08
    个人总结07
    构建之法读后感01
    学习进度表 03
    四则运算3
    求最大值
    学习进度表02
    四则运算 2
    学习进度表01
  • 原文地址:https://www.cnblogs.com/zlj843767688/p/12309127.html
Copyright © 2020-2023  润新知