Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗pyPmFnIFN 22 of 129 menu
◀ ▶

Nuances ao trabalhar com funções internas em Python

Em Python, não só podem existir funções aninhadas, mas uma função também pode retornar outra. Por exemplo, suponha que a função outer retorne como resultado o código fonte da função inner:

def outer(): def inner(): return '+++' return inner

Vamos armazenar a chamada de outer na variável res:

res = outer() print(res)

Após a execução do código, será exibido um objeto de função:

<function outer.<locals>.inner at 0x000001564A212B90>

Se a variável res for chamada com parênteses, a mensagem '+++' será retornada:

print(res()) # exibirá '+++'

O código pode ser reescrito para que res armazene outer com dois pares de parênteses - para chamar a si mesma e a função inner. Disso segue que parênteses adicionais podem ser adicionados à direita da função externa, de acordo com a quantidade de funções nela aninhadas:

res = outer()() print(res) # exibirá '+++'

Dado o seguinte código:

def outer(): def inner(num): return num + 2 return inner res = outer()(3) print(res)

Digite o que será exibido no console.

Dado o seguinte código:

def outer(): def inner(txt): return 'hello, ' + txt return inner res = outer() print(res)

Digite o que será exibido no console.

← →
↑
Português▼
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nós usamos cookies para o funcionamento do site, análises e personalização. O processamento de dados é realizado de acordo com a Política de Privacidade.
aceitar todas configurar rejeitar