1.返回值的作用

函数并非总是直接显示输出,相反,它可以处理一些数据,并返回一个或一组值。函数返回
的值被称为返回值。在函数中,可使用return语句将值返回到调用函数的代码行。返回值让你能
够将程序的大部分繁重工作移到函数中去完成,从而简化主程序。

2.返回简单值

例子:

def get_formatted_name(first_name, last_name):
  """返回整洁的姓名"""
   full_name = first_name + ' ' + last_name
   return full_name.title()
 musician = get_formatted_name('jimi', 'hendrix')
print(musician)

函数get_formatted_name()的定义通过形参接受名和姓。它将姓和名合而为一,在它
们之间加上一个空格,并将结果存储在变量full_name中。然后,将full_name的值转换为
首字母大写格式,并将结果返回到函数调用行。
调用返回值的函数时,需要提供一个变量,用于存储返回的值。在这里,将返回值存储在了
变量musician中。输出为整洁的姓名.

3.让实参变成可选的

有时候,需要让实参变成可选的,这样使用函数的人就只需在必要时才提供额外的信息。可
使用默认值来让实参变成可选的。

例子

def get_formatted_name(first_name, last_name, middle_name=''):
  """返回整洁的姓名"""
   if middle_name:
    full_name = first_name + ' ' + middle_name + ' ' + last_name
  else:
    full_name = first_name + ' ' + last_name
  return full_name.title()
musician = get_formatted_name('jimi', 'hendrix')
print(musician)
musician = get_formatted_name('john', 'hooker', 'lee')
print(musician)

在这个示例中,姓名是根据三个可能提供的部分创建的。由于人都有名和姓,因此在函数定
义中首先列出了这两个形参。中间名是可选的,因此在函数定义中最后列出该形参,并将其默认
值设置为空字符串。
在函数体中,我们检查是否提供了中间名。Python将非空字符串解读为True,因此如果函数
调用中提供了中间名,if middle_name将为True。如果提供了中间名,就将名、中间名和
姓合并为姓名,然后将其修改为首字母大写格式,并返回到函数调用行。在函数调用行,将返回
的值存储在变量musician中;然后将这个变量的值打印出来。如果没有提供中间名,middle_name
将为空字符串,导致if测试未通过,进而执行else代码块:只使用名和姓来生成姓名,
并将设置好格式的姓名返回给函数调用行。在函数调用行,将返回的值存储在变量musician中;
然后将这个变量的值打印出来。
调用这个函数时,如果只想指定名和姓,调用起来将非常简单。如果还要指定中间名,就必
须确保它是最后一个实参,这样Python才能正确地将位置实参关联到形参。
这个修改后的版本适用于只有名和姓的人,也适用于还有中间名的人:

4.返回字典

函数可返回任何类型的值,包括列表和字典等较复杂的数据结构。例如,下面的函数接受姓
名的组成部分,并返回一个表示人的字典:

python的返回值的更多相关文章

  1. shell如何向python传递参数,shell如何接受python的返回值

    1.shell如何向python传递参数 shell脚本 python $sendmailCommandPath $optDate python脚本 lastDateFormat = sys.argv ...

  2. python函数返回值

    2016-08-09  15:01:38 python函数返回值使用return语句,可以返回任意类型的数.如果return语句执行,它之后的所有语句都不再执行. def func(x,y): pri ...

  3. Python 函数返回值

    本章详细介绍 返回值: 0x 00 返回值简介 0x 01 指定返回值与隐含返回值 0x 02 return 语句位置与多条 return 语句 0x 03 返回值类型 0x 04 函数嵌套 0x 0 ...

  4. Python丢弃返回值

    函数多个返回值 python的函数支持返回多个值.返回多个值时,默认以tuple的方式返回. 例如,下面两个函数的定义是完全等价的. def f(): return 1,2 def f(): retu ...

  5. python 函数返回值笔记

    今天学习python时候学习到闭包和柯里化 感觉看概念时候不好理解,自己写下大概就明白点了 柯里化如下 定义一个加法函数 def add(x, y): return x + y 这是没有柯里化之前的函 ...

  6. Python 函数返回值、作用域

    函数返回值 多条return语句: def guess(x): if x > 3: return "> 3" else: return "<= 3&qu ...

  7. day09 python函数 返回值 参数

    day09 python   一.函数     1.函数         函数是对功能的封装         语法:         定义函数:             def 函数名(形参):    ...

  8. python多线程返回值的实现与处理

    题目: # 编写一个python程序,创建两个子线程,分别到下面的网址获取文本内容# http://mirrors.163.com/centos/6/isos/x86_64/README.txt# h ...

  9. Python 递归函数返回值为 None 的解决办法

    在使用 Python 开发的过程中,避免不了会用到递归函数.但递归函数的返回值有时会出现意想不到的情况. 下面来举一个例子: >>> def fun(i): ... i += 1 . ...

随机推荐

  1. django中如何建立抽象型数据库作为父模块可继承其功能

    先建立抽象数据库 from django.db import models class BaseModel(models.Model): """为模型类补充字段" ...

  2. c3中基本动画

    动画:是CSS3中具有颠覆性的特征之一,可通过设置多个节点来精确控制一个或一组动画,常用来实现复杂的动画效果:. 必要元素: a.通过@keyframes指定动画序列:自动补间动画,确定两个点,系统会 ...

  3. PHP简单实现一言 / 随机一句功能

    很多网站都喜欢在页面中加个一言,不过一般都是调用的第三方api.其实,使用万能的php能用短短的几行代码就实现该功能! 将下列代码复制并粘贴到 api.php 中保存,你的专属“一言” API 就搭建 ...

  4. RFC3920

    RFC3920 可扩展的消息和出席信息协议 (XMPP): 核心协议 关于本文的说明 本文为互联网社区定义了一个互联网标准跟踪协议,并且申请讨论协议和提出了改进的建议.请参照"互联网官方协议 ...

  5. 学习markdown语法,易读易写,放2个教程地址

    http://wowubuntu.com/markdown/basic.html http://wowubuntu.com/markdown/basic.html

  6. Optimizing and caching browser bundles...

    扎心了,老铁!!! 他妈的,弄了几天都是卡在这里!!上网查了一下.说是我的内存不够,好吧.我慢慢等,然而让我等了好几天都没什么反应..两天了,一直卡在这里.今天在虚拟机也是发狠了. 我直接把虚拟机的内 ...

  7. 理解Javascript_02_执行上下文01

    执行上下文又名执行上下文环境 JS中为什么会产生这个概念呢,先来看一下下面的这段代码: 通过执行发现,第一句代码报了ReferenceError,第二句和第三句代码是undefined,由于undef ...

  8. 【转】IntelliJ Idea取消Could not autowire. No beans of 'xxxx' type found的错误提示

    1.问题描述 在Idea的spring工程里,经常会遇到Could not autowire. No beans of 'xxxx' type found的错误提示.但程序的编译和运行都是没有问题的, ...

  9. 瀑布模型,(增量开发)渐增式开发,原型化开发,统一过程模型(RUP)

    瀑布模型:设计在开发阶段 瀑布模型有以下优点 1)为项目提供了按阶段划分的检查点. 2)当前一阶段完成后,您只需要去关注后续阶段. 3)可在迭代模型中应用瀑布模型. 增量迭代应用于瀑布模型.迭代1解决 ...

  10. git 各个区的区别

    Git有三大区(工作区.暂存区.版本库)以及几个状态(untracked.unstaged.uncommited) 把文件往Git版本库里添加的时候,是分两步执行的: 第一步是用 git add 把文 ...