91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python不同版本中的_new_有什么不同

發布時間:2020-12-10 09:38:40 來源:億速云 閱讀:281 作者:小新 欄目:編程語言

這篇文章主要介紹python不同版本中的_new_有什么不同,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

new方法接受的參數雖然也是和init一樣,但init是在類實例創建之后調用,而 new方法正是創建這個類實例的方法。

class Person(object):
    """Silly Person"""
 
    def __new__(cls, name, age):
        print '__new__ called.'
        return super(Person, cls).__new__(cls, name, age)
 
    def __init__(self, name, age):
        print '__init__ called.'
        self.name = name
        self.age = age
 
    def __str__(self):
        return '<Person: %s(%s)>' % (self.name, self.age)
 
if __name__ == '__main__':
    piglei = Person('piglei', 24)
print piglei

Python3和 Python2中__new__使用不同

Python3的寫法

class Singleton(object):
    def __new__(cls,*args, **kwargs):
        if not hasattr(cls,'_inst'):
            print(cls)
            cls._inst = super(Singleton, cls).__new__(cls)
        return cls._inst

如果Python3的寫法跟Python2寫法一樣,那么倒數第二行會報錯

"TypeError: object() takes no parameters"

根據上面的運行結果我們可以發現,在python3中強行使用python2的寫法是不可行的。如果有小伙伴是習慣了python2的用法,換版本時要注意_new_寫法的改變。

以上是“python不同版本中的_new_有什么不同”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

江北区| 明水县| 平谷区| 上高县| 寿光市| 柘荣县| 三都| 安远县| 黄大仙区| 铜陵市| 安龙县| 汾西县| 青州市| 东城区| 宁波市| 海安县| 沙洋县| 义马市| 广丰县| 长岛县| 乾安县| 绥滨县| 宁河县| 吉林省| 德安县| 巨鹿县| 土默特左旗| 黄冈市| 阳谷县| 独山县| 垫江县| 铜梁县| 台州市| 安吉县| 廉江市| 寿阳县| 昔阳县| 夏邑县| 平利县| 大安市| 皮山县|