如何解决python导入另一个python文件但缺少其导入的问题

问题描述 投票:0回答:1

我想导入一个名为feature.py的python文件并在其中调用函数,所以我做了'from feature import *'。

from feature import *

在feature.py中,我将pandas导入为pd,并在主python文件中定义了要调用的函数。

import pandas as pd

# time features
def add_time_features(df):
    df["date"] = pd.to_datetime(data.Timestamp, unit='s').dt.date
    df["month"] = pd.to_datetime(data.Timestamp, unit='s').dt.month
    df["weekday"] = pd.to_datetime(data.Timestamp, unit='s').dt.weekday_name
    df["hour"] = pd.to_datetime(data.Timestamp, unit='s').dt.hour

但是,当我运行主python程序并调用该函数时,出现错误消息,指出未定义pd。enter image description here

我以为我确实通过在主文件和feature.py中都使用“将pandas作为pd导入”来定义pd。 Bu它不起作用。那么正确的方法是什么?

python
1个回答
0
投票

[当您以“导入文件名”的形式从另一个文件导入代码时,它的功能与您以“从文件名的导入*”形式从文件中提取函数/类的功能不同。

您显示的代码似乎正在从要导入的文件中获取功能,而没有实际运行import语句。一个简单的解决方法应该是在主文件中放入“将pandas作为pd导入”语句。

基本上,您导入的功能以与主文件中写入的功能相似/相同的方式运行,因此可能遵循相同的规则并可以访问相同的导入语句。

有帮助吗?

© www.soinside.com 2019 - 2024. All rights reserved.