使用lambda或理解列表实现函数

2024-10-02 12:32:51 发布

您现在位置:Python中文网/ 问答频道 /正文

堆叠

我有下面的代码。正如你所能看到的,唯一的变化是索引

    amount = response.json()['txrefs'][0]['tx_hash'] 
    amount = response.json()['txrefs'][1]['tx_hash']
    amount = response.json()['txrefs'][2]['tx_hash']
    amount = response.json()['txrefs'][3]['tx_hash']

我试着用理解列表来实现它。但仍然没有成功。 如何使用lambda或理解列表进行迭代


Tags: lambda代码json列表responsehashamounttx
1条回答
网友
1楼 · 发布于 2024-10-02 12:32:51

您可能想到的理解语法如下:

amounts = [txref['tx_hash'] for txref in response.json()['txrefs']]

请注意,这将为您提供所有tx_hash值的列表,而不仅仅是一遍遍地覆盖同一个值

如果要定义一个函数以获取任意值以避免重复,则可能是:

get_txhash = lambda i: response.json()['txrefs'][i]['tx_hash']

但是没有理由在这里使用lambda而不是def

def get_txhash(i):
    return response.json()['txrefs'][i]['tx_hash']

相关问题 更多 >

    热门问题