1.使用def进行函数定义,告诉python要进行接下来要写一个函数的函数名是什么。函数名后的括号里填可能需要的信息,最后以冒号结束。冒号后的缩进是函数体。name是形参,代表函数完成动作需要的那些信息。调用函数时携带的‘D’才是实参,是具体的信息。

def hello_world(name,act):"""展示问候"""                   #文档字符串 注释print(name+" "+act+":Hello World!")
hello_world('D','say')             #调用函数
hello_world('C','shout')           #可以多次调用函数

传递实参有很多方法,形实顺序对应的位置实参法(见上),实参由变量名和值组成的关键字实参法(见下),还可以使用列表,字典等方法。

def hello_world(name,act):"""展示问候"""                   #文档字符串 注释print(name+" "+act+":Hello World!")
hello_world(name='D',act='say')             #调用函数
hello_world(act='shout',name='C')           #不关心位置顺序

当某个实参每次都使用时,可以直接在形参上指定默认值。

def hello_world(name,act='say'):"""展示问候"""                   #文档字符串 注释print(name+" "+act+":Hello World!")
hello_world(name='D')             #调用函数
hello_world(name='C',act='shout') #想改变预先设置的实参也可以      

一般函数都是处理一些事物,得到的结果可能不需要直白的输出,而是返回,供其他操作使用。函数返回的值就叫返回值,使用return可以将返回值返回到调用函数的代码

def get_name(firstname,lastname,minname=''):   #如果没有中间名可以将中间名形参放到最后且传空参"""返回全名"""fullname = firstname+minname+lastnamereturn fullname.title()FUllname = get_name('D','C')        #调用返回值的函数需要一个变量储存返回值
print(FUllname)
FUllname = get_name('D','c','o')
print(FUllname)

也可以返回字典

def get_name(firstname,lastname,minname=''):   #minname是可选形参,默认为空"""返回字典,包含的信息是全名"""people = {'fname':firstname,'lname':lastname}if minname:           people['minname'] = minnamereturn people
Fname = get_name('D','o','C')
print(Fname)

一些情况下需要传递列表,如果函数对列表进行修改,那么就会永久生效,方便处理大量的数据。使用for或者其他方法可以使列表的每个值都经过处理。如果希望保留原始列表可以使用切片得到副本,使用方便进行处理操作。

def get_name(names):  for name in names:msg = "Hello"+name.title()print(msg)
Fname = ['D','o','C']
get_name(Fname)

有时候可能不知道有多少实参,那么需要使用如下代码。“*”告诉python创建一个空元组用来封装收到的值。如果函数要接收不同类型的实参,那么必须将接收任意量的形参放到最后,其他实参被接收后其余的都封装到其中。

def get_name(firstname,*lastnames):print("\nHer name is "+firstname)for lastname in lastnames:print(lastname)
get_name('Dracula','Claude')
get_name('David','a','b','c')

有可能知道要接收大量元素但不知道接收什么,那么可以将函数写为键值对,使用**创建空字典来储存。

def get_name(firstname,lastname,**other):file = {}file['fname'] = firstnamefile['lname'] = lastnamefor key,value in other.items():file[key] = valuereturn fileufile = get_name('Dracula','Claude',loc='a',id='001')
print(ufile)

python基础(六)函数相关推荐

  1. python的用途实例-Python基础之函数原理与应用实例详解

    本文实例讲述了Python基础之函数原理与应用.分享给大家供大家参考,具体如下: 目标 函数的快速体验 函数的基本使用 函数的参数 函数的返回值 函数的嵌套调用 在模块中定义函数 01. 函数的快速体 ...

  2. Python基础之函数

    详情请戳 python基础之函数介绍及使用 python基础之内置函数 python基础之迭代器和生成器 python基础之装饰器 转载于:https://www.cnblogs.com/zhangl ...

  3. Python数据结构与算法(1.5)——Python基础之函数与异常

    Python数据结构与算法(1.5)--Python基础之函数与异常 0. 学习目标 1. 函数 1.1 自定义函数 1.2 函数与参数 1.3 函数与返回值 2. 异常处理 2.1 raise 语句 ...

  4. 第七篇 python基础之函数,递归,内置函数

    阅读目录 一 数学定义的函数与python中的函数 二 为何使用函数 背景提要 三 函数和过程 四 函数参数 五 局部变量和全局变量 六 前向引用之'函数即变量' 七 嵌套函数和作用域 八 递归调用 ...

  5. 刻意练习:Python基础 -- Task05. 函数与Lambda表达式

    背景 我们准备利用17天时间,将 "Python基础的刻意练习" 分为如下任务: Task01:变量.运算符与数据类型(1day) Task02:条件与循环(1day) Task0 ...

  6. python入门之函数调用内置函数_第九篇 python基础之函数,递归,内置函数

    阅读目录 一 数学定义的函数与python中的函数 二 为何使用函数 背景提要 三 函数和过程 四 函数参数 五 局部变量和全局变量 六 前向引用之'函数即变量' 七 嵌套函数和作用域 八 递归调用 ...

  7. Python基础第六天——函数的使用、函数的参数、函数的返回值、函数的嵌套、命名空间、作用域、函数对象...

    一.拾遗 1.通常情况下无参函数只是进行操作,所以不需要返回值:有参数函数则需要返回值. 2.练习: 判断用户输入一串字符,如果这串字符的长度小于5则重新输入,如果大于5则退出循环. while Tr ...

  8. Python基础__函数

    本节将进入函数的介绍,函数是Python基础中最精彩的部分之一,接下来将对函数做详细介绍. 函数 函数就是对代码进行一个封装.把实现某一功能的代码进行封装到一起.下次需要使用时不需要进行编写代码直接调 ...

  9. Python基础-16 函数高级(续)

    文章目录 十六.函数高级(续) 8. 函数返回多个值 9. 函数嵌套调用及过程 - 函数嵌套 - nonlocal 关键字 10. 递归函数的调用及过程(了解) 1. 系统编程相关 - pass - ...

  10. 『Python基础』函数

    Python中的函数 函数 (1)什么是函数? 软件开发,是为了解决生活中的问题,函数就是生活中的一种行为,如:吃饭.睡觉.学习.游戏等等等- 不需要资源.不需要结果.执行即可 关门的行为 需要资源. ...

最新文章

  1. 空间统计分析_5.5 空间数据库的发展趋势
  2. Jupyter Notebook中显示图像和数学公式
  3. python登陆,注册小程序
  4. 中断/gic代码导读:在哪里配置安全中断的?
  5. 【Linux】一步一步学Linux——nisdomainname命令(171)
  6. 访问数组元素进行赋值
  7. C++ 类中特殊的成员变量(常变量、引用、静态)的初始化方法
  8. [ASP.NET Core 3框架揭秘] 异步线程无法使用IServiceProvider?
  9. json转成类对象转成xml全过程
  10. 计算机学校的奖项,2017年度国家科学技术奖各奖项公示
  11. 关于extern C
  12. 《陪孩子像搭积木一样学编程》,一起来玩Scratch(1)使用Scratch编程的基本流程...
  13. php parse url 中文,php parse_url()函数解析URL用法总结
  14. ESP32直接烧写bin文件
  15. C++和VC++学习方法
  16. 心理传染与恐怖的“模仿者效应”
  17. 关于旅游景点主题的HTML网页设计——北京景点 7页(带订单购物车)
  18. DaVinci:RGB 混合器
  19. YYImage加载gif动态图原理
  20. Win10文件名排序

热门文章

  1. BACKUP DATABASE
  2. EFCore——Entry和Attach
  3. 广州技术沙龙第 3 期报名开始!
  4. 负数在java_在负数中使用Java纪元秒
  5. 青龙面板-酷狗音乐(2022.5.5)
  6. activiti并行审批流程驳回(折腾了好几天)
  7. Vue使用Antv F2
  8. 机器学习中的Bias和Variance是指什么
  9. Mysql数据库的主从复制
  10. 计算机专业网络工程师英语作文,网络工程师自我介绍英文