Python 无法导入函数名
我的所有文件都在同一个目录中 我是python的新手,我正在尝试在预处理文件中编写函数,如:Python 无法导入函数名,python,python-dateutil,Python,Python Dateutil,我的所有文件都在同一个目录中 我是python的新手,我正在尝试在预处理文件中编写函数,如: #Preprocessing file from dateutil import parser def dropOutcomeSubtype(DataFrame): DataFrame.drop('OutcomeSubtype',axis=1,inplace='True') def convertTimestampToTime(Serie): for i in range(0,len(
#Preprocessing file
from dateutil import parser
def dropOutcomeSubtype(DataFrame):
DataFrame.drop('OutcomeSubtype',axis=1,inplace='True')
def convertTimestampToTime(Serie):
for i in range(0,len(Serie)):
parser.parse(Serie[i]).time()
#Import external librairies
import pandas as pd
import numpy as np
import re
#import our librairy
from Preprocessing import convertTimestampToTime, dropOutcomeSubtype
#Reading
Datas = pd.read_csv("../Csv/train.csv", sep=",", na_values=['NaN'])
dropOutcomeSubtype(Datas)
convertTimestampToTime(Datas.DateTime)
from Preprocessing import *
然后我尝试在导出文件中使用它,如下所示:
#Preprocessing file
from dateutil import parser
def dropOutcomeSubtype(DataFrame):
DataFrame.drop('OutcomeSubtype',axis=1,inplace='True')
def convertTimestampToTime(Serie):
for i in range(0,len(Serie)):
parser.parse(Serie[i]).time()
#Import external librairies
import pandas as pd
import numpy as np
import re
#import our librairy
from Preprocessing import convertTimestampToTime, dropOutcomeSubtype
#Reading
Datas = pd.read_csv("../Csv/train.csv", sep=",", na_values=['NaN'])
dropOutcomeSubtype(Datas)
convertTimestampToTime(Datas.DateTime)
from Preprocessing import *
当我尝试使用以下配置在OSX shell中运行代码时:
Python 3.5.2 | Anaconda 4.2.0(x86_64)| IPython 5.1.0
我收到此错误:无法导入名称“convertTimestampToTime”
如果像这样更改我的导入语句:
#Preprocessing file
from dateutil import parser
def dropOutcomeSubtype(DataFrame):
DataFrame.drop('OutcomeSubtype',axis=1,inplace='True')
def convertTimestampToTime(Serie):
for i in range(0,len(Serie)):
parser.parse(Serie[i]).time()
#Import external librairies
import pandas as pd
import numpy as np
import re
#import our librairy
from Preprocessing import convertTimestampToTime, dropOutcomeSubtype
#Reading
Datas = pd.read_csv("../Csv/train.csv", sep=",", na_values=['NaN'])
dropOutcomeSubtype(Datas)
convertTimestampToTime(Datas.DateTime)
from Preprocessing import *
我得到这个错误:没有定义名称“convertTimestampToTime”
你能解释一下为什么吗
提前感谢在这种情况下,您可以将mod path添加到sys.path。如果两者在同一目录中,则在主代码的第一个添加此代码
import os
import sys
here = os.path.abspath(os.path.dirname(__file__))
sys.path.append(here)
它在“当前工作目录”中搜索
Preprocessing.py
,它可以不同于带有脚本的文件夹。如果在CWD(当前工作目录)中找不到,则尝试导入已安装的模块-尝试import Preprocessing
和print(Preprocessing.\uuuuu file\uuuuu)
以查看导入的文件。@furas等等?我不明白你的意思。您建议我怎么做?首先尝试导入预处理
和打印(预处理.\uuuu文件uuuu)
,看看导入了什么文件。@furas它给了我这个:/Users/SIMON/Desktop/Tx/Script/Preprocessing.py我试过了,但不起作用。感谢您的回答也许您必须使用insert(0,此处)
而不是append(此处)
将此文件夹放在其他文件夹之前,这些文件夹也可以包含文件Preprocessing.py