python - Python:接收变量名作为输入,存储在另一个文件中
问题描述
我有一个场景,我需要根据收到的输入获取存储在另一个文件中的变量的值,例如,这里 file1.py 包含存储在每个变量中的几个 sql,file2.py 必须接收存储的变量名称在 file1.py 作为输入。
我必须从另一个程序调用 file2.py,从那里传递输入。当我直接将变量名称(--receive_input "v_sql1")作为输入传递时,程序将其作为字符串并出错。有什么方法可以传递变量名(v_sql1)并且程序仍然可以将其指向实际变量并获取 SQL?
file1.py
v_sql1 = " select * from table"
v_sql2 = "select * from table2"
file2.py
from file1 import *
df = spark.sql(receive_input)
解决方案
我想这就是你所追求的。
file1.py
sqlstmts = {
'v_sql1': "select * from table",
'v_sql2': "select * from table2"
}
file2.py
import file1
pick = "v_sql1"
df = spark.sql(file1.sqlstmts[pick])
推荐阅读
- angular - 在不使用 getRawValue 的情况下获取唯一的 FormGroup/Control 值
- python-3.x - Python将标签添加到父小部件
- java - jedispool getResource 消耗太多延迟
- python - 在 DARKNET 培训期间获得 -NaN,我做错了什么?
- javascript - 有条件地分配数组索引
- java - 我怎样才能循环这个决策结构?
- webpack - Webpack:如何为 ES5 构建浏览器文件和为 Node:current 构建服务器文件
- php - Windows 2019 和 PHP 7.3:“session_start(): ps_files_cleanup_dir: opendir failed: No such file or directory (2)”
- c# - Web Scraper 未返回正确的 URL
- struct - 在通用 lisp 中将结构传递给宏的类型错误