Python的類同時創(chuàng)建多個對象的想法

直接說方法

以字典的鍵(key)為對象名稱,值(value)為對象。如對于類Test,如果想要創(chuàng)建多個對象,則可以

class Test:
    def __init__(self, val):
        self.value = val

d = {}
for i in range(3):
    d['obj'+str(i)] = Test(i)

因此我們就這樣創(chuàng)建了3個對象,每一個鍵就代表一個對象。也就是說,我們相當于創(chuàng)建了一個下面這樣的字典

d = {'obj0':Test(0), 'obj1':Test(1), 'obj2':Test(2)}

所以我們可以輸出一下試試

for i in range(3):
    print(d['obj'+str(i)].value)

#輸出結果
0
1
2

下面扯閑的

上一篇文章說過,是我在寫遺傳算法的時候,我就想模仿C++一樣創(chuàng)建一個對象數組,從而來直接創(chuàng)建一個種群的對象,用個體來表示對象,每個個體都有染色體與適應度這兩個屬性。

于是我就上網查如何創(chuàng)建多個對象,可能是我找的姿勢不對,什么都沒找到。所以很尷尬。但是突然想到了字典這種映射的方式,于是姑且一試,竟然發(fā)現了新大陸。

因此寫在這里給大家分享一下。

實際上我還查到了關于創(chuàng)建多個字典鍵值的方法fromkeys()方法,但是我發(fā)現網上的教程基本上全部的示例都是錯誤的,即寫成了

dict.fromkeys(seq[, value]))

這一句連括號都沒對齊怎么可能會運行通的過,因此我通過查閱資料與辛苦嘗試發(fā)現了真正的用法以及一些小問題,所以這將會再下一篇文章進行講解。

這一篇就到這里,謝謝瀏覽,希望您能夠點個喜歡哦。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,157評論 25 708
  • Spring Cloud為開發(fā)人員提供了快速構建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務發(fā)現,斷路器,智...
    卡卡羅2017閱讀 136,628評論 19 139
  • ** 安卓開發(fā)中或多或少會接觸到藍牙部分,像一些智能家居,藍牙手環(huán),還有一些串口數據傳輸的設備都和藍牙相關,面...
    楓雪狼情閱讀 4,285評論 0 51
  • 哦!七夕那一天 復仇的蟑螂回來了嗎,嗯 泡了一天的衣服呢,還在泡 掉在地上的玻璃杯呢,碎了 德勇和大叔呢,說再見了...
    哆嘞閱讀 201評論 1 1
  • 10.14演唱會已經過去一個多月了,回來后常常后悔,為什么沒有早生幾年,早點認識他們??墒?,阿信說:未來還很長,加...
    浮光掠影_321a閱讀 967評論 0 0

友情鏈接更多精彩內容