Python3函数自定义和调用 - vip共享吧
  • 网站首页
  • IT技术笔记
    • Java教程
    • MySql数据库
    • PHP开发
    • Python教程
    • JavaScript
    • SEO优化
    • 常用工具
  • 好资源福利
    • 会员账号共享
  • 网站模板源码
    • 小程序源码
    • 网站源码
  • 共享网络资源
  • 更多功能
    • 留言吐槽
    • 文章归档
    • 我的邻居
    • 史上今日
    • 视频解析
    • 高清壁纸
    • 公告动态
    • 广告合作
    • 关于我们


导航菜单
  • 网站首页
  • IT技术笔记
    • Java教程
    • MySql数据库
    • PHP开发
    • Python教程
    • JavaScript
    • SEO优化
    • 常用工具
  • 好资源福利
    • 会员账号共享
  • 网站模板源码
    • 小程序源码
    • 网站源码
  • 共享网络资源
  • 更多功能
    • 留言吐槽
    • 文章归档
    • 我的邻居
    • 史上今日
    • 视频解析
    • 高清壁纸
    • 公告动态
    • 广告合作
    • 关于我们
Python

Python3函数自定义和调用

2024/9/6 韩俊  Python教程 801 0

Python 的函数在形式上分为三种,一种是 Python 内置的函数, 一种是第三方库的函数,一种是我们自己定义的函数,但无论哪种形式, 函数定义方式都是一样的。

函数定义后,我们就可以通过函数名和参数来调用函数,本节我们就来学习如何定义函数和使用函数。

函数定义

Python 内置了很多函数,我们可以直接调用,要调用一个函数, 需要知道函数的名称和参数的个数,比如求绝对值的函数,函数名称为 abs,参数个数只有一个。

print(abs(-8)) # 8

想了解 python 内置函数的定义,我们可以直接从 python 的官方网站查看文档(https://docs.python.org/2/library/functions.html), 我们也可以在交互式命令行通过 help(函数名称) 查看该函数的帮助信息。

C:\Users\fengfeng000123>python
>>> help(abs)
Help on built-in function abs in module __buil

abs(...)
abs(number) -> number

Return the absolute value of the argument.

Python 解释器内不可能内置过多的函数,但也有些比较实用的函数会经常用到,有些好心的程序员写好的一些库, 经过官方评审后,加入了 Python 安装包内,在我们安装 Python 的时候就会把它们放在一些目录下, 调用的时候只需要 import 库名 就可以了,当然也有一些程序员写的库没有加入到 Python 安装包内,我们只需要把它们下载下来即可使用。

import time

time.sleep(3)
print("三秒后我才出来")

在项目开发中我们需要自己定义函数来实现项目的需求,在 Python 中,我们定义一个函数要使用 def 语句,依次写出函数名,括号,括号中的参数和冒号, 然后,在缩进块中编写函数体,函数的返回值用 return 语句返回。

def myabs(data):
    return data if data >= 0 else -data  # 暂不考虑用户如果输入非数字类型数据

print(myabs(-9)) # 9

在 python 中,我们定义一个函数,但是还没想好怎么写函数的代码,可以用 pass 语句,这种函数就是空函数,pass 语句什么都不做,实际上 pass 可以用来作为占位符。

def myfunc():
    pass

函数参数

调用函数时,如果参数个数不对,Python 解释器会自动检查出来,并抛出 TypeError。

def beauty(age):
    if age < 20: return "beauty"
beauty() # 参数个数不对

由于 Python 是弱类型语言,如果调用者传入的参数类型不符合我们要求,Python 解释器就无法帮我们检查, 我们可以用 Python 内置的数据类型检查函数 isinstance 来从逻辑上检查参数类型是否匹配,isinstance 函数可以判断某个对象是属于某种类型或者某些类型中的一种(用 tuple),是的话返回 True,否则返回 False。

def myabs(data):
    if isinstance(data, (int, float)):
        return data if data >= 0 else -data
    return "参数类型不对"

print(myabs("hello")) # 参数类型不对

我们虽然可以用 isinstance 函数来检查数据类型,但是我们想在用户给的参数不符合我们的要求时, 最好抛出异常终止程序执行,而不是给用户返回一个提醒。

def mysquare(data):
    try:
        rst = data * data
    except:
        raise TypeError("类型错误,请输入数字类型")
    return rst

print(mysquare("hello"))

函数返回值

其它语言一般只能返回一个值,而 Python 和大多数其它语言不同,可以返回多个返回值,当 Python 返回多个值的时候,python 解释器把这些值放进一个 tuple 里面,所以 Python 的函数返回多值其实就是返回一个 tuple,该 tuple 本质上也是一个值。

def myfunc():
    return "ruhua", "xingxing", "zhaoritian"

rst = myfunc()
print(rst)        # 可以看到是一个 tuple
print(type(rst))  # tuple 类型

当 python 返回多个值的时候,接收变量个数只能为一个或返回值的个数, 因为一个变量接收的是整个 tuple,而多个变量接收的是 tuple 里面成员的个数。

def myfunc():
    return "ruhua", "xingxing", "zhaoritian"

rst = myfunc()              # ok
one, two, three = myfunc()  # ok
one, two = myfunc()         # 错误

函数体内部的语句在执行时,一旦执行到 return 时,函数就执行完毕,并将结果返回, 如果没有 return 语句,函数执行完毕后也会返回结果,只是结果为 None。

def myfunc():
    name = "myfunc"

print(myfunc()) # None

本节重要知识点

会写自定义函数。

了解函数的参数。

弄明白 python 返回值的本质。

点赞:0 分享

上一篇
Python3函数参数详解
下一篇
ChatGPT共享账号 最新ChatGPT账号免费使用2023.07.25更新
作者头像 作者名称 作者性别
韩俊

热门推荐

1 Python3的list类型
2 python3闭包函数
3 python文件和目录操作
4 Python中xml文件处理
5 python的定制类
6 python中collections库详解

评论列表

取消回复

    •  
      Login

      韩俊

      趁你现在还有时间,尽你自己最大的努力,努力做成你最想做的那件事,成为你最想成为的那种人,过着你最想过的那种生活。这个世界永远比你想的要更精彩,不要败给生活。

      退出登陆
      • 10358文章
      • 455评论
      • 80微语
  • 广告赞助

  • 二零二五年07月
    一二三四五六日
     123456
    78910111213
    14151617181920
    21222324252627
    28293031   
  • 分类

    • 网站模板源码
    • IT技术笔记
    • 好资源分享
    • 共享网络资源
  • 最新文章

      • 国庆祖国祝福语简短独特
        • 新年祝福语简短简单
          • 祝贺孩子考学祝福语简短
            • 婚礼新郎祝福语简短励志
              • 嫁女结婚祝福语简短精辟
                • 祝医生节简短祝福语
                  • 大童生日祝福语简短
                    • 女孩参军祝福语大全简短
  • 热门文章

    • 酷狗音乐VIP账号 酷狗音乐会员账号共享2017.01.29更新
    • 芒果tv vip会员账号 芒果tv会员账号共享2017.01.29更新
    • 爱奇艺vip账号 爱奇艺/PPS会员账号共享2016.12.12更新
    • 优酷/土豆vip会员账号 优酷会员账号共享2017.01.29更新
    • 活动:免费获得爱奇艺VIP/PPS会员账号50天以上的使用权!
    • 酷我音乐VIP账号 酷我音乐会员账号共享2016.12.31更新
    • 暴风影音会员账号 暴风影音会员账号共享2016.12.31更新
    • m1905会员账号 m1905会员账号共享2016.10.21更新
  • 最新评论

    • https://www.vipshare8.com/content/templates/meta/Static/images/tx/10.jpg

      你丫的 文章写得太好了 支持下!![F3...

    • https://www.vipshare8.com/content/templates/meta/Static/images/avatar.jpg

      很棒!刚在某网站看到这个,很欣赏,可惜下...

    • https://www.vipshare8.com/content/templates/meta/Api/qqtx.php/?qq=3861064027

      呃呃呃 oooo

    • https://www.vipshare8.com/content/uploadfile/202103/thum-490d1614564497.png

      回复了111:根据激活的时间有一年的有效期!

    • https://www.vipshare8.com/content/templates/meta/Api/qqtx.php/?qq=792480561

      到2025就到期了吗?

    • https://www.vipshare8.com/content/uploadfile/202103/thum-490d1614564497.png

      [blockquote]打卡时间:16:...

    • https://www.vipshare8.com/content/templates/meta/Static/images/tx/7.jpg

      俊哥,想借用迅雷一用!但需要手机验证!看...

    • https://www.vipshare8.com/content/templates/meta/Api/qqtx.php/?qq=3293901900

      感谢大大的分享

    • https://www.vipshare8.com/content/uploadfile/202103/thum-490d1614564497.png

      回复了好奥v:如果没有解析成功,可以切换接口...

    • https://www.vipshare8.com/content/templates/meta/Api/qqtx.php/?qq=131241242441

      现在视频解析网站怎么用不了啦?

  • 网站统计 I 当前在线:299人

    • 本站管理:1位
    • 用户总数:593位
    • 置顶文章:2篇
    • 日志总数:10358篇
    • 微语总数:80条
    • 评论总数:455条
    • 标签总数:83条
    • 页面总数:8页
    • 分类总数:14个
    • 链接总数:16条
    • 运行天数:3725天
    • 最后更新:7月11日
    • 登录
    • 注册
    • 找回
    Copyright © 2025vip共享吧网站地图 网站备案豫ICP备19004194号-1

    免责声明:本站资源仅供用于学习和交流,本站部分素材内容来源于网络,如有侵权/投稿等,请及时联系站长.

    • 首页
    • 秒懂百科 秒懂百科
    • 搜索
    • 史上今日

    大家都在搜

    • sem优化
    • 秒懂百科
    • 搜狐视频vip账号
    • 酷我音乐VIP账号
    • 乐视会员账号共享
    • 聊天app
    • 哔哩哔哩vip会员账号
    • 优酷vip账号共享
    • 土豆vip账号共享
    • 起点账号共享
    • 网盘赚钱
    • 百度文库下载
    • 酷我音乐会员账号
    • seo
    • 酷狗VIP账号
    • qq音乐会员共享
    • 
    • 