python中绑定方法与非绑定方法的实现示例
作者:工具晨的日常 发布时间:2021-01-03 03:59:13
标签:python,绑定方法,非绑定方法
一:绑定方法:其特点是调用方本身自动作为第一个参数传入
1.绑定到对象的方法:调用方是一个对象,该对象自动传入
2.方法绑定到类:调用方是类,类自动传入
import settings_A
class 后台数据库:
def __init__(self,ip,port):
self.ip=ip
self.port=port
def 基本功能(self):
print('%s:%s' %(self.ip,self.port))
@classmethod # 将下面的函数装饰成绑定给类的方法
#从配置文件当中获取对应参数来完成实例化
def 基本功能A(cla):
#要造对象,调的是类
print(cla)
return cla(settings_A.IP, settings_A.PORT)
obj1=后台数据库('1.1.1.1',3306)
print(obj1)
print('='*100)
print(obj1.__dict__)#对应参数输出的结果
obj2=后台数据库.基本功能A()
print('='*100)
print(obj2.__dict__)
settings_A的基本内容
IP='127.8.2.1'
PORT=3306
效果
二:非绑定方法,静态方法
没有绑定:调用方可以是类、对象,没有自动传参的效果
class 后台数据库:
def __init__(self,ip,port):
self.nid=self.对用户id的处理()
self.ip=ip
self.port=port
@staticmethod # 将下述函数装饰成一个静态方法
def 对用户id的处理():
import uuid#uuid是个随机数模块
return uuid.uuid4()
@classmethod
def 功能1(cls):
pass
def 功能2(self):
pass
obj1=后台数据库('1.1.1.1',3306)
print(后台数据库.对用户id的处理)
print(后台数据库.功能1)
print(obj1.功能2)
效果
来源:https://blog.csdn.net/CSDNXXCQ/article/details/120517781


猜你喜欢
- reflect反射首先,我们要区分两个概念——“标识名”和&
- 参数数量及其作用该函数共有两个参数,分别是key和scope。def get_collection(key, scope=None) Wra
- 数据库的操作越来越成为整个应用的性能瓶颈,这对于Web应用尤其明显。关于数据库的性能,这并不只是DBA需要关心的,而更是后端开发需要去关注的
- 1、简单的代码from matplotlib import pyplot as pltimport seaborn as snsimport
- PHP PDO 事务与自动提交现在通过 PDO 连接上了,在开始进行查询前,必须先理解 PDO 是如何管理事务的。事务支持四大特性(ACID
- 目录赋值语句直接赋值:增量赋值: 链式赋值: 多重赋值:语法糖:基本输入:input()函数:eval()函数:&nbs
- Mysql的utf8编码最多3个字节,而Emoji表情或者某些特殊字符是4个字节。因此会导致带有表情的昵称插入数据库时出错。只要修改MySQ
- 前面我们讲了 TCP 编程,我们知道 TCP 可以建立可靠连接,并且通信双方都可以以流的形式发送数据。本文我们再来介绍另一个常用的协议–UD
- MySQL中的锁锁是为了解决并发环境下资源竞争的手段,其中乐观并发控制,悲观并发控制和多版本并发控制是数据库并发控制主要采用的技术手段(具体
- 因为最近要经常转换数据集进行实验,因此记录一下。1、视频转图片即为将视频解析为一帧一帧的图片:import cv2vc=cv2.VideoC
- Python中常用到的两种标准化输入方式:分别sys.stdin和input,两者使用方式大致相同,但是总的来说sys.stdin使用方式更
- 上一篇实战爬取知乎热门话题的实战,并且保存为本地的txt文本先上代码,有很多细节和坑需要规避,弄了两个半小时import requestsi
- 1. 用SimpleITK读取dicom序列:import SimpleITK as sitkimport numpy as npimg_p
- 1、问题描述某厂生产甲乙两种饮料,每百箱甲饮料需用原料6千克、工人10名,获利10万元;每百箱乙饮料需用原料5千克、工人20名,获利9万元。
- 一、背景实际工作中会有一些耗时的异步任务需要使用定时调度,比如发送邮件,拉取数据,执行定时脚本通过celery 实现调度主要思想是 通过引入
- 为了给导航栏添加响应式特性,您要折叠的内容必须包裹在带有 classes .collapse、.navbar-collapse 的 <
- 前面的话发布一个版本时,我们通常先在版本库中打一个标签(tag)。这样,就唯一确定了打标签时刻的版本。将来无论什么时候,取某个标签的版本,就
- 用习惯列表解析之后会觉得超级酷,所以在尝试使用列表解析,把循环什么的写在一行里面。使用if的时候什么时候必须要有else,什么时候可以没有e
- order by 是怎么工作的?表定义CREATE TABLE `t1` ( `id` int(11) NOT NULL, &n
- 很多时候,由于程序设计需要,要求在asp的include包含文件里调用动态的文件。如<!--#include file=&q