亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Python中的__SLOTS__屬性使用示例

系統(tǒng) 1737 0

看python社區(qū)大媽組織的內(nèi)容里邊有一篇講python內(nèi)存優(yōu)化的,用到了__slots__。然后查了一下,總結(jié)一下。感覺非常有用

python類在進行實例化的時候,會有一個__dict__屬性,里邊有可用的實例屬性名和值。聲明__slots__后,實例就只會含有__slots__里有的屬性名。

          
# coding: utf-8
 
 
class A(object):
  x = 1
 
  def __init__(self):
    self.y = 2
 
a = A()
print a.__dict__
print(a.x, a.y)
a.x = 10
a.y = 10
print(a.x, a.y)
 
 
class B(object):
  __slots__ = ('x', 'y')
  x = 1
  z = 2
 
  def __init__(self):
    self.y = 3
    # self.m = 5 # 這個是不成功的
 
 
b = B()
# print(b.__dict__)
print(b.x, b.z, b.y)
# b.x = 10
# b.z = 10
b.y = 10
print(b.y)
 
 
class C(object):
  __slots__ = ('x', 'z')
  x = 1
 
  def __setattr__(self, name, val):
    if name in C.__slots__:
      object.__setattr__(self, name, val)
 
  def __getattr__(self, name):
    return "Value of %s" % name
 
 
c = C()
print(c.__dict__)
print(c.x)
print(c.y)
# c.x = 10
c.z = 10
c.y = 10
print(c.z, c.y)
c.z = 100
print(c.z)
        

            
{'y': 2}
(1, 2)
(10, 10)
(1, 2, 3)
10
Value of __dict__
1
Value of y
(10, 'Value of y')
100 
          



更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 国产成人精品一区二区免费视频 | 亚洲精品另类 | 人人爱天天做夜夜爽88 | 欧美一级在线播放 | 国产精品区一区二区免费 | 国产免费无遮挡精品视频 | 亚洲一区二区视频 | 99视频在线观看高清 | 久久久久久久国产视频 | 欧美日韩片 | 午夜国产在线观看 | 韩国网站爱久久 | 亚洲欧美国产另类视频 | 香蕉午夜 | 日本1区2区 | 国产免费一级精品视频 | 日本一级特级毛片视频 | 久久婷婷色一区二区三区 | 国产福利在线观看永久免费 | 久久这里精品 | 在线观看亚洲视频 | 亚洲骚片 | 国产成人亚洲欧美三区综合 | 中文字幕精品视频 | 成年毛片| 日韩免费一级毛片 | 久久影院一区二区三区 | 男人的天堂黄 | 羞羞在线视频 | 国产精品视频网 | 中文国产成人精品久久一区 | 尤物视频在线播放 | 国内精品亚洲 | www.夜夜骑.com| 青草成人| 97在线视频免费播放 | 99成人国产精品视频 | 亚洲一区毛片 | 清纯唯美亚洲综合日韩第 | 久久国产精品高清一区二区三区 | 91久久亚洲精品国产一区二区 |