Artigo
· Set. 1, 2023 2min de leitura

Python Shell - Obtenha a última saída de expressão e coloque de volta na variável. Uma dica de sublinhado

Peço desculpas se isso for óbvio para programadores Python, mas, para aqueles que estão saindo do ObjectScript, esta pode ser uma dica útil.

O cenário é o desenvolvimento de alguns comandos do Embedded Python.

Testando se a funcionalidade está sendo confirmada pelo shell:

$SYSTEM.Python.Shell()
 
Python 3.9.5 (default, Mar 14 2023, 06:58:44) [MSC v.1927 64 bit (AMD64)] on win32
Type quit() or Ctrl-D to exit this shell.
>>>

Quando o Python avalia uma expressão no shell, ele imprime o resultado da expressão no terminal.

>>> 1 + 2

3

É bastante fácil avaliar e imprimir valores sem querer

>>> iris.cls("%Dictionary.MethodDefinition")._OpenId("%Library.String||LogicalToJSON",0)

# .. mas eu queria muito esse objeto para outros trabalhos

Ou seja, o que eu queria fazer era configurar uma nova variável para retornar o valor desta chamada de função:

>>> myvar = iris.cls("%Dictionary.MethodDefinition")._OpenId("%Library.String||LogicalToJSON",0)

Isso pode causar um atraso se houve muita configuração envolvida para chegar até este ponto.

A variável "_" sublinhado vem ao resgate. Isso retém o valor da última expressão avaliada por você.

Você pode salvar seu momento P&D ao executar: "[nome da variável] = _  "

>>> iris.cls("%Dictionary.MethodDefinition")._OpenId("%Library.String||LogicalToJSON",0)

# oops

>>> myvar = _

# Mantenha a calma e siga em frente ...

>>> myvar._ClassName()

'MethodDefinition

Espero que isso seja útil para alguém.

Discussão (0)1
Entre ou crie uma conta para continuar