第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在函數(shù)中創(chuàng)建的命名管的適當(dāng)返回類型是什么

在函數(shù)中創(chuàng)建的命名管的適當(dāng)返回類型是什么

慕少森 2022-10-18 17:01:16
我正在嘗試靜態(tài)類型一些有效的代碼,它看起來像這個代碼片段:from collections import namedtuplefrom typing import Dict, Union, NamedTuple, Anydef read_attr(ident: str, attributes: Union[None, Dict[str, str]]):    tbl_attr = namedtuple('tbl', ['id', 'attr'])    if attributes:        return tbl_attr(id=ident, attr=attributes)    else:        return tbl_attr(id=ident, attr=None)tbl = read_attr(ident='ID1', attributes={'foo': 'bar'})print(tbl.attr['foo'])namedtubletbl_attr是在函數(shù)內(nèi)創(chuàng)建的,應(yīng)該由其他函數(shù)調(diào)用。我的問題是:如何->正確輸入返回值。從我的角度來看,有一些選項,例如-> objector ofc `Any.
查看完整描述

1 回答

?
富國滬深

TA貢獻(xiàn)1790條經(jīng)驗 獲得超9個贊

將 namedtuple 定義移到函數(shù)定義之外,您可以將其用作返回類型。見下文


tbl_attr = namedtuple('tbl', ['id', 'attr'])


def read_attr(ident: str, attributes: Union[None, Dict[str, str]]) -> tbl_attr:

    if attributes:

        return tbl_attr(id=ident, attr=attributes)

    else:

        return tbl_attr(id=ident, attr=None)

tbl = read_attr(ident='ID1', attributes={'foo': 'bar'})


打印(tbl.attr['foo'])


查看完整回答
反對 回復(fù) 2022-10-18
  • 1 回答
  • 0 關(guān)注
  • 98 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號