python3封装函数 python封装方法有几种

python如何封装函数

可以定义一个类,类里定义很多函数(主要用它做什么)或直接定义函数在一个py文件中

成都创新互联,专注为中小企业提供官网建设、营销型网站制作、响应式网站开发、展示型网站设计制作、网站设计等服务,帮助中小企业通过网站体现价值、有效益。帮助企业快速建站、解决网站建设与网站营销推广问题。

在另一个文件中导入这个那个py包,调用类和方法

就是封装了

python中什么是封装?

“封装”就是将抽象得到的数据和行为(或功能)相结合,形成一个有机的整体(即类);封装的目的是增强安全性和简化编程,使用者

不必了解具体的实现细节,而只是要通过外部接口,一特定的访问权限来使用类的成员。而这些封装数据的函数是和Student类本身是关联起来的,我们称之为类的方法。

将下面Python代码封装成函数

Python:常用函数封装:

def is_chinese(uchar):

"""判断一个unicode是否是汉字"""

if uchar = u'\u4e00' and uchar=u'\u9fa5':

return True

else:

return False

def is_number(uchar):

"""判断一个unicode是否是数字"""

if uchar = u'\u0030' and uchar=u'\u0039':

return True

else:

return False

def is_alphabet(uchar):

"""判断一个unicode是否是英文字母"""

if (uchar = u'\u0041' and uchar=u'\u005a') or (uchar = u'\u0061' and uchar=u'\u007a'):

return True

else:

return False

def is_other(uchar):

"""判断是否非汉字,数字和英文字符"""

if not (is_chinese(uchar) or is_number(uchar) or is_alphabet(uchar)):

return True

else:

return False

def B2Q(uchar):

"""半角转全角"""

inside_code=ord(uchar)

if inside_code0x0020 or inside_code0x7e: #不是半角字符就返回原来的字符

return uchar

if inside_code==0x0020: #除了空格其他的全角半角的公式为:半角=全角-0xfee0

inside_code=0x3000

else:

inside_code+=0xfee0

return unichr(inside_code)

def Q2B(uchar):

"""全角转半角"""

inside_code=ord(uchar)

if inside_code==0x3000:

inside_code=0x0020

else:

inside_code-=0xfee0

if inside_code0x0020 or inside_code0x7e: #转完之后不是半角字符返回原来的字符

return uchar

return unichr(inside_code)

def stringQ2B(ustring):

"""把字符串全角转半角"""

return "".join([Q2B(uchar) for uchar in ustring])

def uniform(ustring):

"""格式化字符串,完成全角转半角,大写转小写的工作"""

return stringQ2B(ustring).lower()

def string2List(ustring):

"""将ustring按照中文,字母,数字分开"""

retList=[]

utmp=[]

for uchar in ustring:

if is_other(uchar):

if len(utmp)==0:

continue

else:

retList.append("".join(utmp))

utmp=[]

else:

utmp.append(uchar)

if len(utmp)!=0:

retList.append("".join(utmp))

return retList

Python已经封装成的三个函数怎么变成带四个参数的一个函数?

再写一个函数, 通过其中一个参数来判断(或者其他的判别方式, 比如参数的数量, 类型等)来判断要执行的方法, 调用就可以了

比如, 已经有的三个函数为:

def func_A(v1, v2, v3)

def func_B(v1,v2,v3)

def func_C(v1,v2,v3)

再封装变成:

def func(m, v1, v2, v3):

if m==1: func_A(v1,v2,v3)

elif m==2:func_B(v1,v2,v3)

else: func_C(v1,v2,v3)

如果ABC三个函数的参数数量各不相同, 就可以使用参数数量来判断:

def func_A(v1)

def func_B(v1,v2)

def func_C(v1,v2,v3)

----------------------------

def func(*args):

cnt = len(args)

if cnt==1: func_A(*args)

elif cnt ==2: func_B(*args)

elif cnt == 3: func_C(*args)

python怎么读封装函数

封装其实分为两个层面,但无论哪种层面的封装,都要对外界提供好访问你内部隐藏内容的接口(接口可以理解为入口,有了这个入口,使用者无需且不能够直接访问到内部隐藏的细节,只能走接口,并且我们可以在接口的实现上附加更多的处理逻辑,从而严格控制使用者的访问)

第一个层面的封装(什么都不用做):创建类和对象会分别创建二者的名称空间,我们只能用类名.或者obj.的方式去访问里面的名字,这本身就是一种封装。print(m1.brand) #实例化对象(m1.)

print(motor_vehicle.tag) #类名(motor_vehicle.)

-------------输出结果---------注意:对于这一层面的封装(隐藏),类名.和实例名.就是访问隐藏属性的接口

第二个层面的封装:类中把某些属性和方法隐藏起来(或者说定义成私有的),只在类的内部使用、外部无法访问,或者留下少量接口(函数)供外部访问。

Python中私有化的方法也比较简单,即在准备私有化的属性(包括方法、数据)名字前面加两个下划线即可。


名称栏目:python3封装函数 python封装方法有几种
当前URL:http://bzwzjz.com/article/dodehpj.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 成都网站建设 高端品牌网站建设 做网站设计 成都网站建设 成都网站制作 成都网站设计 企业网站建设 营销型网站建设 手机网站建设套餐 攀枝花网站设计 网站制作 成都网站建设 网站制作公司 网站制作 成都网站设计 手机网站制作设计 成都网站制作 盐亭网站设计 古蔺网站建设 成都h5网站建设 成都网站建设 达州网站设计