首页 > 编程语言 >python中对象方法的链式调用

python中对象方法的链式调用

时间:2023-05-24 10:46:21浏览次数:42  
标签:调用 函数 python conf 链式 返回值 方法

conf = SparkConf ().setMaster("Local[*]").setAppName("test_ spark_ app")  # 链式调用

# 下面三条语句功能相当于上面一条语句
conf = SparkConf()
conf.setMaster("Local[*]")
conf.setAppName("test. namel")

  

conf = SparkConf().setMaster("Local[*]").setAppName("test_ spark" )

rdd2 = rdd . map(Lambda X:X *10).map(Lambda x: X + 5)

  

链式调用,或者也可以称为方法链(Method Chaining),从字面意思上来说就是将一些列的操作或函数方法像链子一样穿起来的 Code 方式。
在 Python 中实现一个简单的链式调用就是通过构建类方法并返回对象自身或返回归属类

在一个函数的返回值上继续调用另一个函数,而且可以一直调用下去,直到调用的函数没有返回值或者返回值不是函数为止。
Python中实现链式调用的方式有两种,一种是使用类的方式,另一种是使用装饰器的方式。

使用类的方式实现链式调用,需要类中的每个方法都返回对象本身,这样就可以在一个方法的返回值上继续调用另一个方法,从而实现链式调用。

使用装饰器的方式实现链式调用,需要使用装饰器将函数的返回值包装成一个对象,这样就可以在一个函数的返回值上继续调用另一个函数,从而实现链式调用。


优点:链式调用使得代码在可读性上大大的增强,同时以尽可能少的代码量去实现更多操作。
缺点:当链式调用的方法超过 10 步以上时,那么出错的几率就会大幅度提高,从而造成调试或 Debug 的困难。

标签:调用,函数,python,conf,链式,返回值,方法
From: https://www.cnblogs.com/sangern/p/17427295.html

相关文章

  • < Python全景系列-6 > 掌握Python面向对象编程的关键:深度探索类与对象
    欢迎来到我们的系列博客《Python全景系列》!在这个系列中,我们将带领你从Python的基础知识开始,一步步深入到高级话题,帮助你掌握这门强大而灵活的编程语法。无论你是编程新手,还是有一定基础的开发者,这个系列都将提供你需要的知识和技能。Python全景系列的第六篇,本文将深入探讨Python......
  • 微服务框架SpringCloud微-2-服务拆分及远程调用-demo黑马
    微服务框架SpringCloud微服务架构2服务拆分及远程调用2.1案例Demo2.1.1服务拆分注意事项 这里四个模块,拆成四个服务就行了 单一职责:不同微服务,不要重复开发相同业务【不能像以前那样了】数据独立:不要访问其它微服务的数据库 3.面向服务:将自己的业务暴......
  • python+playwright 学习-64 非无痕模式启动浏览器launch_persistent_context
    前言最近有一些爬虫用户在使用playwright的时候,提到playwright默认是用无痕模式打开的浏览器,很多网站会有反爬机制,使用无痕模式打开的时候功能无法正常使用。playwright提供了launch_persistent_context启动浏览器的方法,可以非无痕模式启动浏览器。无痕模式启动浏览器......
  • python+playwright 学习-62 日历控件操作
    前言遇到输入框是弹出日历控件,选一个日期的这种场景,可以直接在输入框输入内容。如果输入框是readonly的时候,可以用js改变输入框的属性日历控件如果输入框是日历控件先看能不能直接输入一个日期,如果能直接输入的情况,就不用点开了代码示例#上海悠悠wx:283340479#blog:ht......
  • python运行使用pywin32下载及安装问题
     1、python执行报错File"F:\XXX\XXX.py",line7,in<module> 运行python程序,提示错误如下:importwin32gui ModuleNotFoundError:Nomodulenamed'win32gui'该报错信息表示在F:\XXX\XXX.py中的第7行引入了win32gui,但是当前设备缺少pywin32的模块,需要安装安装方式一:直......
  • Centos7安装Python3.9
    1、 使用源码编译安装:您可以从Python官方网站下载Python3.9的源代码,并按照以下步骤进行编译和安装:安装编译所需的依赖项: sudoyuminstallgccopenssl-develbzip2-devellibffi-develzlib-develreadline-develsqlite-devel下载Python3.9的源代码包: wgethttp......
  • Python爬虫为什么需要库
    爬虫需要库是因为爬虫需要从网页中提取数据,并对数据进行处理和存储。库是一组已经封装好的工具,可以帮助爬虫快速地完成这些任务。这些库可以大大简化爬虫的开发过程,提高爬虫的效率和稳定性。Python爬虫常用的库有很多,以下是一些常用的库:1、requests:用于发送HTTP请求,获取网页内容。2......
  • Python如何自动生成文档,pdoc类库的使用
    pdoc是一个基于Python的自动文档生成工具,可以生成Python模块、类和函数的API文档。它可以将代码注释和文档字符串自动转换为HTML文档,使得开发者可以轻松地生成文档,并分享给其他人。本教程将介绍如何安装和使用pdoc生成PythonAPI文档。安装pdoc在安装pdoc之前,需要确保已经安装了Pyt......
  • python+playwright 学习-65多线程同时打开多个浏览器不同账号操作
    前言最近用小伙伴提到多线程同时操作多个浏览器,每个浏览器用不同账号登录的需求。多线程操作以下是2个账号同时打开2个浏览器操作的示例fromplaywright.sync_apiimportsync_playwrightfromthreadingimportThreaddefdo_some_thing(username,password):playwri......
  • python 清除字符串中的 emoji 表情
    https://pypi.org/project/emoji/pipinstallemoji复制字符串中间有emoji表情,替换掉。text="......