机器学习 第一章 Python复习(3)类的私有属性、特殊属性、字典数据类型

1.类变量和实例变量

参考文档
实例变量是属于每一个实例独有的变量,类变量可以被类的所有实例共同访问

class Dog:

    kind = 'canine'         # class variable shared by all instances

    def __init__(self, name):
        self.name = name    # instance variable unique to each instance

>>> d = Dog('Fido')
>>> e = Dog('Buddy')
>>> d.kind                  # shared by all dogs
'canine'
>>> e.kind                  # shared by all dogs
'canine'
>>> d.name                  # unique to d
'Fido'
>>> e.name                  # unique to e
'Buddy'

2.可变对象与不可变对象

参考文档
1 可变对象,可以修改对象的值,其id()不会变化。
2 不可变对象,有固定值,其值无法被改变,包括number、string、tuple。如果修改值,会新建一个对象。主要用于哈希常量,例如字典中的键值。

l=[]
def test(list):
    print(id(list))
    list.append(3)
test(l)
print(id(l))

3.id()

参考文档
返回对象的标识,保证对象在其生命周期中唯一性和持久性。如果两个变量的生命周期是无交叉的,那这两个变量的id可能相同。

4.私有变量

参考文档
定义私有变量的方式是 :在变量或方法前加入__(两个下划线)
在外部调用私有变量的方法是_类名__私有变量名

class Me:
    age=[]
    __sex='nan'
    def __init__(self,inputName=""):
        self.name=inputName
    def __show(self):
        print(self.name)
        print(self.age)
        print(self.__sex)

me=Me()
me._Me__show()
print(me._Me__sex)

5.pass

空语句
python根本不需要像java一样 预先定义各种类属性,可以用pass来作为占位符。

class news:
    pass
n=news()
n.title="新闻标题"
n.id=101

6.特殊属性

参考文档1
参考文档2
几个重要的特殊属性
1、__doc__

'''
当前py文件文档说明
'''
def test():
    '函数的文档说明'
    pass
class Me:
    '类的文档说明'


print(__doc__)
me=Me()
print(me.__doc__)
print(test.__doc__)

2、 __name__
类、函数、方法、描述符或者生成器对象的名字

print(__name__)   #假如当前模块是主模块,那么 当前的模块名字就是一个固定值__main__
print(Me.__name__)
print(test.__name__)

3、__dict__
存储的对象可写属性的字典或者别的map类型的对象

7.字典类型

参考文档
类似Java中的map

user={'name':'shenyi','age':19,'obj':Me}
for key in user:
    print(key)

print(user['name'])
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值