Python return函数返回值类型和帮助函数使用教程

 更新时间:2023年06月08日 10:42:33   作者:村长  
这篇文章主要为大家介绍了Python return函数返回值类型和帮助函数使用教程详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

引言

经过函数学习之后我们会发现函数不被调用是不会直接执行的,我们在之前的函数调用之后发现运行的结果都是函数体内print()打印出来的结果,但是有时候为了方便函数参与二次运算,我们让函数体内不输出任何结果,而是把函数本身就当做一种结果,输出这种结果的方式就可以理解为返回函数的结果,python用return关键词来返回。下面我们对比几种不同的函数调用结果。

一、函数的输出方式对比

1.直接使用print打印函数运行结果:直接调用函数名传参即可。

def func1(a, b):
    res = a + b
    print(res)
func1(4, 9)
返回结果:13

2.打印没有返回值,没有输出代码块的函数,需要把函数当做一个变量来用print输出。

def func2(a, b):
    res = a + b
print(func2(4, 9))
返回结果:None

3.打印有返回值(return)的函数,同上,也是把函数当做一个变量来输出。

def func3(a, b):
    res = a + b
    return res
    # print(a)  # return后面的代码不会被执行
print(func3(4, 9))
返回结果:13

对比上面三种形式的函数,如果我们想用函数的结果来做运算的话,第一种情况就无法实现,比如

func1(4, 9) * 3
返回结果:
TypeError: unsupported operand type(s) for *: 'NoneType' and 'int'

 第二种情况本身就是None,所以忽略,第三种情况我们再试试

print(func3(4, 9) * 3)
返回结果:39

从上面的结果可以看出,有返回值的函数用起来很方便,直接可以当做变量来使用。

二、return的作用

同时return还有结束函数代码块的功能,return之后的下一行语句不会被执行。
注意:有返回值的函数一般直接调用函数名是不执行任何结果的,赋值给变量后才会返回结果。如果一个函数没有return语句,其实它有一个隐含的语句,返回值是None,类型也是'None Type'。print是打印在控制台,而return则是将后面的部分作为返回值。”
下面再来看看return的一些特别之处。

1.可以return多个结果

def func3(a, b):
    res1 = a + b
    res2 = a - b
return res1, res2
print(func3(4, 9))
返回结果:13  -5

2.一个函数可以有多个return,但是只会执行第一个

def func3(a, b):
    res1 = a + b
    res2 = a - b
    return res1
return res2
print(func3(4, 9))
返回结果:13

3.没有return的函数返回NoneType

def func3(a, b):
    res1 = a + b
res2 = a - b
print(type(func2(4, 9)))
返回结果:<class 'NoneType'>

三、帮助函数

这里属于一个补充知识点,我们在函数使用的时候不知道传参和函数的其他用法的时候可以使用help()函数来输出开发文档中的文本提示。

help(print)import os  #文件目录操作模块
os.mkdir('123')
help(os.mkdir)

返回结果:

Help on built-in function print in module builtins:

print(...)
    print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
    
    Prints the values to a stream, or to sys.stdout by default.
    Optional keyword arguments:
    file:  a file-like object (stream); defaults to the current sys.stdout.
    sep:   string inserted between values, default a space.
    end:   string appended after the last value, default a newline.
    flush: whether to forcibly flush the stream.
Help on built-in function mkdir in module nt:
mkdir(path, mode=511, *, dir_fd=None)
    Create a directory.    

    If dir_fd is not None, it should be a file descriptor open to a directory,
      and path should be relative; path will then be relative to that directory.
    dir_fd may not be implemented on your platform.
      If it is unavailable, using it will raise a NotImplementedError.

    The mode argument is ignored on Windows.

 以上是关于Python函数返回值类型和帮助函数的讲解,更多关于Python return帮助函数的资料请关注脚本之家其它相关文章!

相关文章

  • 解决python 输出到csv 出现多空行的情况

    解决python 输出到csv 出现多空行的情况

    这篇文章主要介绍了解决python 输出到csv 出现多空行的情况,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • python上下文管理器异常问题解决方法

    python上下文管理器异常问题解决方法

    在本篇文章里小编给大家整理的是一篇关于python上下文管理器异常问题解决方法,对此有兴趣的朋友们可以学习参考下。
    2021-02-02
  • Python bisect_left 函数使用场景详解

    Python bisect_left 函数使用场景详解

    在Python的编程世界中,数据处理和搜索操作是非常常见的任务,bisect_left函数是Python标准库bisect模块中的一个强大工具,接下来,我们将详细探讨bisect_left函数的使用场景,需要的朋友可以参考下
    2024-11-11
  • 如何在Python中安装GDAL库

    如何在Python中安装GDAL库

    这篇文章主要介绍了如何在Python中安装GDAL库,GDAL是一个在X/MIT许可协议下的开源栅格空间数据转换库,需要的朋友可以参考下
    2023-04-04
  • 以Flask为例讲解Python的框架的使用方法

    以Flask为例讲解Python的框架的使用方法

    这篇文章主要介绍了Python的框架的使用方法,文中以Flask框架的安装为例进行讲解,代码基于Python2.x版本,需要的朋友可以参考下
    2015-04-04
  • pytest使用@pytest.mark.parametrize()实现参数化的示例代码

    pytest使用@pytest.mark.parametrize()实现参数化的示例代码

    这篇文章主要介绍了pytest使用@pytest.mark.parametrize()实现参数化,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • Python实现数据集划分(训练集和测试集)

    Python实现数据集划分(训练集和测试集)

    这篇文章主要为大家详细介绍了Python是如何实现数据集划分的,分为训练集和测试集,文中的实现方法讲解详细,感兴趣的小伙伴可以了解一下
    2023-05-05
  • python selenium 无界面浏览器的实现

    python selenium 无界面浏览器的实现

    有时我们不想让浏览器窗口跳出来,而是想在后台进行操作,这就需要用到无界面浏览器,本文主要介绍了python selenium 无界面浏览器的实现,具有一定的参考价值,感兴趣的可以了解一下
    2023-10-10
  • python实现日历效果

    python实现日历效果

    这篇文章主要为大家详细介绍了python实现日历效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • keras 特征图可视化实例(中间层)

    keras 特征图可视化实例(中间层)

    今天小编就为大家分享一篇keras 特征图可视化实例(中间层),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01

最新评论