這篇文章主要介紹python解釋器實現(xiàn)字典合并的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
10余年建站經(jīng)驗, 網(wǎng)站設計制作、網(wǎng)站制作客戶的見證與正確選擇。創(chuàng)新互聯(lián)提供完善的營銷型網(wǎng)頁建站明細報價表。后期開發(fā)更加便捷高效,我們致力于追求更美、更快、更規(guī)范。
python的數(shù)據(jù)類型:1. 數(shù)字類型,包括int(整型)、long(長整型)和float(浮點型)。2.字符串,分別是str類型和unicode類型。3.布爾型,Python布爾類型也是用于邏輯運算,有兩個值:True(真)和False(假)。4.列表,列表是Python中使用最頻繁的數(shù)據(jù)類型,集合中可以放任何數(shù)據(jù)類型。5. 元組,元組用”()”標識,內(nèi)部元素用逗號隔開。6. 字典,字典是一種鍵值對的集合。7. 集合,集合是一個無序的、不重復的數(shù)據(jù)組合。
1、說明
實現(xiàn)字典合并生成新字典的邏輯,對應于 | 操作符。
實現(xiàn)字典就地合并邏輯,對應于 |= 操作符。
CPython的實現(xiàn)邏輯與純Python的實現(xiàn)基本相同,只有引用計數(shù)的問題與對象的垃圾回收有關(guān)。
2、實例
// 實現(xiàn)字典合并生成新字典的邏輯,對應于 | 操作符 static PyObject * dict_or(PyObject *self, PyObject *other) { if (!PyDict_Check(self) || !PyDict_Check(other)) { Py_RETURN_NOTIMPLEMENTED; } PyObject *new = PyDict_Copy(self); if (new == NULL) { return NULL; } if (dict_update_arg(new, other)) { Py_DECREF(new); // 減少引用計數(shù) return NULL; } return new; } // 實現(xiàn)字典就地合并邏輯,對應于 |= 操作符 static PyObject * dict_ior(PyObject *self, PyObject *other) { if (dict_update_arg(self, other)) { return NULL; } Py_INCREF(self); // 增加引用計數(shù) return self; }
以上是“python解釋器實現(xiàn)字典合并的方法”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!