Как выполнить оператор Julia, созданный динамически - PullRequest
2 голосов
/ 11 июля 2020

На языке Julia 1.4.2 я создал оператор динамически. Какую команду мне следует использовать для ее выполнения?

Пример:

import Pkg; 
Pkg.add("DataFrames"); 
using DataFrames

i=1;  
e="df_original$i  = DataFrame(a = Int[], b = String[])"  
#i.e., the statement is "df_original1  = DataFrame(a = Int[], b = String[])"

Julia_exec(e)

Что эквивалентно Julia_exec в Julia, которое может выполнить вышеуказанный оператор?

Спасибо

1 Ответ

4 голосов
/ 11 июля 2020
eval(Meta.parse(e))

Например:

julia> eval(Meta.parse(e));

julia> df_original1
0×2 DataFrame

Дополнительную информацию можно найти в руководстве по метапрограммированию Джулии https://docs.julialang.org/en/v1/manual/metaprogramming/

Однако большинство задач в Julia могут можно достичь без метапрограммирования, и я настоятельно рекомендую вам не использовать его в обычных рабочих процессах.

...