python语言的作者是_Python是一门动态语言
【IT168 評論】動態語言的定義
動態編程語言 是 高級程序設計語言 的一個類別,在計算機科學領域已被廣泛應用。它是一類 在運行時可以改變其結構的語言 :例如新的函數、對象、甚至代碼可以被引進,已有的函數可以被刪除或是其他結構上的變化。動態語言目前非常具有活力。例如JavaScript便是一個動態語言,除此之外如 PHP 、 Ruby 、 Python 等也都屬于動態語言,而 C 、 C++ 等語言則不屬于動態語言。
給對象綁定(添加)屬性
在這里,我們定義了1個類Car,在這個類里,定義了兩個初始屬性Carname和CarMoney,但是人還有性別啊!如果這個類不是你寫的是不是你會嘗試訪問性別這個屬性呢?
>>> C.user = "技術大爆炸">>> P.user'技術大爆炸'>>>
這時候就發現問題了,我們定義的類里面沒有sex這個屬性啊!怎么回事呢? 這就是動態語言的魅力和坑! 這里 實際上就是 動態給實例綁定屬性!
給類綁定(添加)屬性
我們嘗試打印C1.user,發現報錯,C1沒有user這個屬性!---- 給C這個實例綁定屬性對C1這個實例不起作用! 那我們要給所有的Car的實例加上user屬性怎么辦呢? 答案就是直接給Car綁定屬性!
#如果C1這個實例對象中沒有user屬性的話,那么就會訪問它的類屬性None
#可以看到沒有出現異常>>>
給類綁定(添加)屬性
我們直接給Car綁定user這個屬性,重新實例化C1后,C1就有user這個屬性了! 那么function呢?怎么綁定?
既然給類添加方法,是使用類名.方法名 = xxxx,那么給對象添加一個方法也是類似的對象.方法名 = xxxx
完整的代碼如下:
刪除屬性、方法
刪除的方法:
del 對象.屬性名delattr(對象, "屬性名")
通過以上例子可以得出一個結論:相對于動態語言,靜態語言具有嚴謹性!所以,玩動態語言的時候,小心動態的坑!
那么怎么避免這種情況呢? 請使用__slots__,
本文作者:高小杰
本文來自云棲社區合作伙伴“IT技術之道”。
超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生總結
以上是生活随笔為你收集整理的python语言的作者是_Python是一门动态语言的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python装饰器函数执行后日志_Pyt
- 下一篇: python爬虫设计_python爬虫设