码迷,mamicode.com
首页 > 编程语言 > 详细

python函数

时间:2018-11-14 01:07:22      阅读:237      评论:0      收藏:0      [点我收藏+]

标签:列表   append   tuple   匿名函数   数值   自己   实现   col   访问   

Python 函数

函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。

函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。


定义一个函数

你可以定义一个由自己想要功能的函数,以下是简单的规则:

  • 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()
  • 任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。
  • 函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。
  • 函数内容以冒号起始,并且缩进。
  • return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。
def ChangeInt(a):
    a = 10
b = 2
ChangeInt(b)
print(b) 

 

def changeme(mylist):
    "修改传入的列表"
    mylist.append([1, 2, 3, 4])
    print("函数内取值: ", mylist)
    return

# 调用changeme函数
mylist = [10, 20, 30]
changeme(mylist)
print("函数外取值: ", mylist)
def printme(str):
    "打印任何传入的字符串"
    print(str)
    return
# 调用printme函数
printme(str="My string")
# 可写函数说明
def printinfo(name, age):
    "打印任何传入的字符串"
    print("Name: ", name)
    print("Age ", age)
    return
# 调用printinfo函数
printinfo(age=50, name="miki");

 

def printinfo(args,*vartuple):
    "打印任何传入的参数"
    print(args)
    for var in vartuple:
        print(var)
    return
# 调用printinfo 函数
printinfo(10)
printinfo(70, 60, 50)

匿名函数

python 使用 lambda 来创建匿名函数。

  • lambda只是一个表达式,函数体比def简单很多。
  • lambda的主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去。
  • lambda函数拥有自己的命名空间,且不能访问自有参数列表之外或全局命名空间里的参数。

语法

lambda函数的语法只包含一个语句,如下:

lambda [arg1 [,arg2,.....argn]]:expression
#可写函数说明
total = lambda arg1, arg2: arg1 + arg2;

# 调用sum函数
print("相加后的值为 : ", total(10, 20))
print("相加后的值为 : ", total(20, 20))

 


return 语句

return语句[表达式]退出函数,选择性地向调用方返回一个表达式。不带参数值的return语句返回None。之前的例子都没有示范如何返回数值,下例便告诉你怎么做:

# 可写函数说明
def add_sum(arg1, arg2):
    # 返回2个参数的和."
    total = arg1 + arg2
    print("函数内 : ", total)
    return total

# 调用sum函数
total = add_sum(10, 20)

 

 



python函数

标签:列表   append   tuple   匿名函数   数值   自己   实现   col   访问   

原文地址:https://www.cnblogs.com/fengzi7314/p/9955715.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!