文档章节

Python:__slots__用法

Aomo
 Aomo
发布于 2016/02/16 14:15
字数 198
阅读 44
收藏 3

#程序员薪资揭榜#你做程序员几年了?月薪多少?发量还在么?>>>

#!/usr/bin/python3
"""
这里通过实例简明地展示了python中__slots__的用法
"""
import types

class Student:
    """
    __slots__中列出了该类的所有属性。给任何其他不存在于此数组里的属性赋值都会抛出异常,如下面的setNickname函数。
    """
    __slots__=['name','id','addr']
    
    def __init__(self,i,n,a):
        self.name=n
        self.id=i
        self.addr=a
    
    def setNickname(self,nn):
        """
        这里试图设置一个__slots__中没有的属性,调用此函数时会抛出异常。
        """
        self.nickname=nn
        
    def printInfo(self):
        print('ID\tName\tAddress')
        print('%s\t%s\t%s' % (self.id,self.name,self.addr))        

if __name__=='__main__':
    print('---START Test---')
    s=Student(1,'James','London')
    s.printInfo()
    s.setNickname('007')# Error Student类没有nickname属性
    print(s.nickname)

 

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

扫一扫,关注我们,获取更多信息

© 著作权归作者所有

Aomo
粉丝 3
博文 57
码字总数 24530
作品 0
高级程序员
私信 提问
加载中

评论(0)

Python面向对象之魔术方法

str 改变对象的字符串显示。可以理解为使用print函数打印一个对象时,会自动调用对象的str方法 class Student: s1 = Student('张三', 24)print(s1) # 会调用s1的str方法 repr 在python解释器...

osc_030273w2
2019/03/16
2
0
python __slots__ 详解(上篇)

转自:http://blog.csdn.net/sxingming/article/details/52892640 python中的new-style class要求继承Python中的一个内建类型,一般继承object,也可以继承list或者dict等其他的内建类型。 ...

osc_gpaqd6ej
2018/03/12
1
0
Python——详解__slots__,property和私有方法

本文始发于个人公众号:TechFlow,原创不易,求个关注 今天是Python专题的第11篇文章,我们来聊聊面向对象的一些进阶使用。 slots 如果你看过github当中一些大牛的代码,你会发现很多大牛经常...

TechFlow2019
04/21
0
0
面向对象(三)【类的特殊成员及高级特性】

前面两篇文章介绍了类与对象的基本概念和类中的一些成员,本篇主要介绍类和对象的特殊成员及一些高级特性。 1 对象的格式化输出 (1)如果需要对一个对象(实例)进行格式化输出,可以重写类...

osc_0i8c6s1z
2018/03/20
1
0
python 面向对象高级编程之使用__slots__

python学习笔记,特做记录,分享给大家,希望对大家有所帮助。 使用slots 正常情况下,当我们定义了一个class,创建了一个class的实例后,我们可以给该实例绑定任何属性和方法,这就是动态语...

展菲
2019/07/08
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Flutter 使用Navigator进行局部跳转页面

老孟导读:Navigator组件使用的频率不是很高,但在一些场景下非常适用,比如局部表单多页填写、底部导航一直存在,每个tab各自导航场景。 Navigator 是管理路由的控件,通常情况下直接使用N...

老孟Flutter
46分钟前
28
0
使用site-maven-plugin在github上搭建公有仓库

简介 Maven是我们在开发java程序中经常使用的构建工具,在团队合作开发过程中,如果我们想要将自己写好的jar包共享给别人使用,通常需要自己搭建maven仓库,然后将写好的jar包上传到maven仓库...

flydean
今天
25
1
Python笔记:爬取各国疫情仙去人数数据制作南丁格尔玫瑰图

我凌晨用Python爬虫实时从网上爬取各国在疫情中仙去人数的数据,然后仿人民日报制作成“南丁格尔玫瑰图” 英国37048;意大利32877;西班牙27117都对得上; 但美国、法国、巴西的跟百度大数据...

tengyulong
今天
26
0
PHP Session的用法

在 PHP 中,Session 是一种服务器端的机制,服务器使用一种散列表的结构(类似于 JSON)来保存信息。相比于保存在客户端的 Cookie,Session 将用户交互信息保存在了服务器端,使得同一个客户...

linuxprobe2020
今天
37
0
webpack.03-打包js同时生成html页面

在空文件夹初始化:CMD npm init -y cnpm install -D webpack webpack-cli 文件结构 src(文件夹)--->test.js console.log('hello webpack') src(文件夹)--->index.html <html> ......

_qq507570355
今天
24
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部