python自定义函数中的return和print使用及说明

目录
  • 首先,先来了解一下return
  • 自定义函数时
  • 如果return后还有代码需要被执行怎么办?
  • 不加return语句会有怎样的结果
  • 在自定义函数中,return和print有什么区别
  • 总结

首先,先来了解一下return

以下所有代码都是在jupyter notebook中运行的.

自定义函数时

用return语句指定返回值,即函数运行最后得出的结果

举个例子:

def Add(x,y):
    z = x+y
    return z
def Ad(x,y):
   z = x+y
   return x

上边是我定义的两个函数,除了名字不一样之外,唯一不同的就是return后的返回值,那么运行的结果是怎样的呢?

Add(1,2)

返回值 3

Ad(1,2)

返回值1

形成这样结果的原因就在于Add函数的返回值是两个参数的和,Ad函数返回的是第一个参数的值,所以函数运行最后的返回值是什么,除了函数内部代码块的运行之外,很重要得意一点在于自定义函数最后要求返回的值是什么。

函数代码块执行到return语句时,会退出函数,就算后边还有属于自定义函数的代码,也不会被执行

再举个例子:

def Add_1(x,y):
   z = x+y
   return z
   print(x,y)

在前边例子的基础上,加了一行代码,这行代码要达到的效果是打印出传入的参数值,我们看下执行效果

Add_1(1,2)

返回值3

并没有打印传入的参数值,因为代码执行到return语句就结束了,后边的代码不会被执行。

如果return后还有代码需要被执行怎么办?

可以将return语句放在try…finally语句中,return语句被执行后会继续执行finally后的语句。

来,还是举个例子:

def Add_2(x,y):
    try:
        z = x+y
        return z
    finally:
        print(x,y)

依然是在上一个例子的基础上进行了一点点改动,那么来看一下运行的结果吧

(这里加上In[]和Out[]方便看)

In[2]: Add_2(1,2)

返回结果

1 2
Out[2]: 3

很明显return后的代码也被执行了!

不加return语句会有怎样的结果

不加return语句,就没有返回值

举个例子:

def Add_3(x,y):
    x+y

这样自定义函数不会报错,也可以运行,我们看一下调用函数的结果

Add_3(1,2)

执行后,不会显示结果。那么不用return是不是就不能看到函数运行结果了?

当然不是,用print也可以显示结果,还是举个例子来看:

def Add_4(x,y):
   print(x+y)

来看下函数调用的结果:

Add_4(1,2)

返回值3

可以显示结果,但是和其他print函数打印出来的结果一样,没有Out[]标识。

如果不是很理解这句话的意思也没关系,我来看一个迷糊很多人的问题

在自定义函数中,return和print有什么区别

很重要的一点区别就在与两者显示出来的值的结果。

下边直接上传图片了,更直观一点

是不是能清楚的看出区别了,虽然用return和print都可以显示交互结果,但是如果要把函数作为参数传入别的函数时,就需要return的返回值了.

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • python自定义函数def的应用详解

    这里是三岁,来和大家唠唠自定义函数,这一个神奇的东西,带大家白话玩转自定义函数 自定义函数,编程里面的精髓! def 自定义函数的必要函数:def 使用方法: def 函数名(参数1,参数2,参数-): 函数体(语句块) return [返回值] 注意事项 函数名的命名规则:和标识符的基本规则是一样的,基本上由小写字母和数字下划线构成 def 是关键字,不能够修改(define的简称) 函数后面一定要加括号(英文状态的)括号里面是否加参数看具体情况 括号后面的冒号不能够忘记 函数体必须加上缩进(

  • Python 跨.py文件调用自定义函数说明

    0 前言 os.chdir() :用于改变当前python工作的目录到指定的路径 sys.path:是python搜索模块的一个路径集,为list,自定义的包可以把存放路径加进去,之后直接调用包名就行了. 1 同一文件夹 一般当前的工作路径是在搜索路径里面,所以不用sys.path.append,如果调用包的时候报错,先使用sys.path查看当前路径在不在list里,不在list里加进去才能直接调用自定义包. 一个文件夹内有两个 .py 文件: exe101.py FileWriteAbout

  • Python pandas自定义函数的使用方法示例

    本文实例讲述了Python pandas自定义函数的使用方法.分享给大家供大家参考,具体如下: 自定义函数的使用 import numpy as np import pandas as pd # todo 将自定义的函数作用到dataframe的行和列 或者Serise的行上 ser1 = pd.Series(np.random.randint(-10,10,5),index=list('abcde')) df1 = pd.DataFrame(np.random.randint(-10,10,(

  • python自定义函数实现最大值的输出方法

    python中内置的max()函数用来得到最大值,通过冒泡排序也可以. #!/usr/bin/python def getMax(arr): for i in range(0,len(arr)): for j in range(i+1,len(arr)): first=int(arr[i]) second=int(arr[j]) if first<second: arr[i]=arr[j] arr[j]=first print arr[0] arr1=[19,29,30,48] getMax(a

  • Python中如何自定义函数

    目录 Python自定义函数 自定义函数的语法 自定义函数的实现 自定义函数的调用 Python自定义函数基础概念 函数定义语法 函数文档字符串 函数定义规则 形参定义方式 函数调用 函数调用时参数的传递形式 全局变量与局部变量 函数的功能性 函数式编程 函数的 可重入性(结果唯一性) 总结 Python自定义函数 在Python编程中,可以使用已经定义好的函数,也可以自定义函数实现某些特殊的功能. 自定义函数的语法 在Python中,自定义函数的语法如下所示 def 函数名(参数):   函数

  • python自定义函数中的return和print使用及说明

    目录 首先,先来了解一下return 自定义函数时 如果return后还有代码需要被执行怎么办? 不加return语句会有怎样的结果 在自定义函数中,return和print有什么区别 总结 首先,先来了解一下return 以下所有代码都是在jupyter notebook中运行的. 自定义函数时 用return语句指定返回值,即函数运行最后得出的结果 举个例子: def Add(x,y): z = x+y return z def Ad(x,y): z = x+y return x 上边是我定

  • Python自定义函数定义,参数,调用代码解析

    函数能提高应用的模块性,和代码的重复利用率.Python提供了许多内建函数,比如print()等.也可以创建用户自定义函数. 函数定义 函数定义的简单规则: 函数代码块以def关键词开头,后接函数标识符名称和圆括号(),任何传入参数和自变量必须放在圆括号中间 函数内容以冒号起始,并且缩进 若有返回值,Return[expression]结束函数:不带return表达式相当于返回None 函数通常使用三个单引号'''...'''来注释说明函数:函数体内容不可为空,可用pass来表示空语句:以下几个

  • Python自定义函数计算给定日期是该年第几天的方法示例

    本文实例讲述了Python自定义函数计算给定日期是该年第几天的方法.分享给大家供大家参考,具体如下: 写一个函数,计算给定日期是该年的第几天. 满足闰年的条件: 闰年是公历中的名词,能被4整除但不能被100整除,或能被400整除的年份即为闰年. 闰年(Leap Year)是为了弥补因人为历法规定造成的年度天数与地球实际公转周期的时间差而设立的.补上时间差的年份为闰年.闰年共有366天(1-12月分别为31天,29天,31天,30天,31天,30天,31天,31天,30天,31天,30天,31天)

  • python自定义函数实现一个数的三次方计算方法

    python自定义函数在运行时,最初只是存在内存中,只有调用时才会触发运行. def cube_count(a): if is_number(a): return a**3 else: print("非数字不能计算立方值") def is_number(a): if not isinstance(a,(int,float)): print("输入的%s不是数字,请重新输入"%a) return False else: return True c = cube_cou

  • python回调函数中使用多线程的方法

    下面的demo是根据需求写的简单测试脚本 #!/usr/bin/env python # coding: utf-8 # 第一个列表为依赖组件和版本号,后面紧跟负责人名称 # 接着出现第二个以来组建列表,负责人为空了 # 所以根据需求需要对组件.版本号.负责人进行不同处理 # 这时在for循环中根据if判断,写回调函数处理 # 格式不一致数据的测试数据 a = [[u'tool-1', u'1.9.13'], u'xiaowang', u'xiaoqu', [u'tool-2', u'1.9.2

  • 详解C语言中sizeof如何在自定义函数中正常工作

    1.在main函数中,sizeof是可以正常工作的,比如: int main() { int n[5]; printf("input: \n"); int i ; for(i = 0; i < 5; i++) { scanf("%d",n + i); } int len = sizeof(n)/sizeof(n[0]); printf("%d\n",len); return 0; } 2.但是在自定义函数中就不可以了,如下: #includ

  • Python自定义函数实现求两个数最大公约数、最小公倍数示例

    本文实例讲述了Python自定义函数实现求两个数最大公约数.最小公倍数.分享给大家供大家参考,具体如下: 1. 求最小公倍数的算法: 最小公倍数  =  两个整数的乘积 /  最大公约数 所以我们首先要求出两个整数的最大公约数, 求两个数的最大公约数思路如下: 2. 求最大公约数算法: ① 整数A对整数B进行取整, 余数用整数C来表示    举例: C = A % B ② 如果C等于0,则C就是整数A和整数B的最大公约数 ③ 如果C不等于0, 将B赋值给A, 将C赋值给B ,然后进行 1, 2

  • Python max函数中key的用法及原理解析

    一.背景 起源于一个问题:怎样找到字符串中出现次数最多的字符 其实使用max函数就能很轻松的解决这个问题: 代码: str1 = "AAAaaa8888899sssss" print(max(str1, key=str1.count)) 结果:8 二.原理 max()函数用于获得给定的可迭代对象中的最大值. key是max()函数的一个参数,它辅助max函数找到最大元素.当max() 函数中有 key 参数时,求的是 value 的最大值,当没有 key 参数时,求的是 key 的最大

随机推荐