python - Python:如何导入涉及另一个函数的函数
问题描述
我有一个名为data_extraction的文件,它有两个函数get_data_from_db
,data_sanity
其中data_sanity
调用get_data_from_db
. 当我尝试在第二个文件中导入data_extraction时出现错误
ImportError:无法从“data_extraction”导入名称“data_sanity”
第二个文件
from data_extraction import get_data_from_db
from data_extraction import data_sanity
数据提取文件
def get_data_from_db(db_query, fileName):
try:
(user, password) = creds()
conn = database_config(user=user, password=password, database="*", port="*", host="*")
def create_pandas_table(sql_query, database = conn):
table = read_sql_tmpfile(sql_query, database)
return table
import tempfile
def read_sql_tmpfile(query, conn):
print("")
with tempfile.TemporaryFile() as tmpfile:
copy_sql = "COPY ({query}) TO STDOUT WITH CSV {head}".format(
query=query, head="HEADER"
)
cur = conn.cursor()
cur.copy_expert(copy_sql, tmpfile)
tmpfile.seek(0)
df = pd.read_csv(tmpfile)
return df
conn.close()
except (Exception, psycopg2.Error) as error :
print("Error while connecting to the database:", error)
sub_info.to_csv(f'{fileName}.csv', index=False)
df = pd.read_csv(f'{fileName}.csv')
return df
def data_sanity(model_loan_df):
db_query = ("""
select
*
from
fdj.fdknfkdn
""")
raw_loan_df = get_data_from_db(db_query, 'raw_loan_check_data')
return model_loan_df.shape[0] == raw_loan_df.shape[0]
解决方案
我认为这应该有效,至少它在我的机器上有效:
from data_extraction import *
它不起作用的原因可能是它们不在同一个目录中。
推荐阅读
- javascript - 在循环中多次覆盖元素的样式?
- ios - 错误:方法不会覆盖其超类中的任何方法
- owasp - 如何在 OWASP Zap (GUI) 自动攻击中指定 URL 参数
- python - 转换表以平滑一列中的记录
- android-studio - 无法在 Android Studio 中的“FileMapping”中打开库
- mongodb - Mongodbd 使用 Mongoose 登录到新数据库
- ios - 将 ios13.1 升级到 13.2 的问题 - NavigationLink - 试图弹出到不存在的视图控制器
- python - if语句中的Python生命变量
- sql - 具有多个用户的区域映射
- datatable - 我们如何通过仅在 webix 中指定自定义过滤器名称来重新过滤数据表?