python中把元組轉(zhuǎn)換為namedtuple方法
我們可以把表里每一個橫行的數(shù)據(jù),看成是不同的元組。在理解了這個概念后,昨天我們學(xué)了不少的namedtuple類,是否也能把元組轉(zhuǎn)換成namedtuple呢?當(dāng)然這是一個嘗試,很多小伙伴平時使用的時候會很少用到,而且資料的搜集方面也比較難找。小編也搜集了很久才有收獲,本篇就為大家?guī)碓M在python中轉(zhuǎn)換為namedtuple的方法。
之前我們了解了為什么使用namedtuple,現(xiàn)在該學(xué)習(xí)如何將常規(guī)元組和轉(zhuǎn)換為namedtuple了。假設(shè)由于某種原因,有包含彩色RGBA值的實例。如果要將其轉(zhuǎn)換為Color namedtuple,則可以按以下步驟進(jìn)行:
>>> c = {"r": 50, "g": 205, "b": 50, "alpha": alpha} >>> Color(**c) >>> Color(r=50, g=205, b=50, alpha=0)
我們可以利用該**結(jié)構(gòu)將包解壓縮dict為namedtuple。
元組類似于列表,是一個基于位置的有序?qū)ο蠹?,但是元組一旦創(chuàng)建之后就不能更改,因此列表中修改元素的操作對于元組都不適用。
使用()就可以創(chuàng)建元組,元素之間使用英文逗號,隔開。
num_tuple = (1, 2, 3) string_tuple = ("a", )
如果我想從dict創(chuàng)建一個namedtupe,如何做?
>>> c = {"r": 50, "g": 205, "b": 50, "alpha": alpha} >>> Color = namedtuple("Color", c) >>> Color(**c) Color(r=50, g=205, b=50, alpha=0)
過將dict實例傳遞給namedtuple工廠函數(shù),它將為你創(chuàng)建字段。然后,Color像上邊的例子一樣解壓字典c,創(chuàng)建新實例。
運行代碼后,就可以把元組轉(zhuǎn)換為namedtuple了。
元組轉(zhuǎn)換為namedtuple實例擴(kuò)展:
在內(nèi)部使用namedtuples,但我想保持與提供普通元組的用戶的兼容性。
from collections import namedtuple tuplePi=(1,3.14,"pi") #Normal tuple Record=namedtuple("MyNamedTuple", ["ID", "Value", "Name"]) namedE=Record(2, 2.79, "e") #Named tuple namedPi=Record(tuplePi) #Error TypeError: __new__() missing 2 required positional arguments: 'Value' and 'Name' tuplePi.__class__=Record TypeError: __class__ assignment: only for heap types
到此這篇關(guān)于python中把元組轉(zhuǎn)換為namedtuple方法的文章就介紹到這了,更多相關(guān)元組在python中如何轉(zhuǎn)換為namedtuple內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
淺談python的dataframe與series的創(chuàng)建方法
今天小編就為大家分享一篇淺談python的dataframe與series的創(chuàng)建方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-11-11關(guān)于Python 中的時間處理包datetime和arrow的方法詳解
這篇文章主要介紹了關(guān)于Python 中的時間處理包datetime和arrow的相關(guān)知識,本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2020-03-03Python設(shè)計足球聯(lián)賽賽程表程序的思路與簡單實現(xiàn)示例
足球聯(lián)賽的賽制就是一支隊伍在一個賽季中主客場分別面對聯(lián)賽中除了自身以外的球隊一次,對此我們可以使用一種循環(huán)算法來實現(xiàn),接下來就一起來看一下Python設(shè)計足球聯(lián)賽賽程表程序的思路與簡單實現(xiàn)示例:2016-06-06Python 結(jié)巴分詞實現(xiàn)關(guān)鍵詞抽取分析
這篇文章主要介紹了Python 結(jié)巴分詞實現(xiàn)關(guān)鍵詞抽取分析,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-10-10Python 基于win32com客戶端實現(xiàn)Excel操作的詳細(xì)過程
這篇文章主要介紹了Python 基于win32com客戶端實現(xiàn)Excel操作的詳細(xì)過程,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-05-05