def readcsv(myfile):
myfile_o = open(myfile, "rU")
reader = csv.reader(myfile_o, delimiter=",")
def csvmain():
readcsv('/Users/madrad/Dnl/Hei/demand.csv')
csvmain()
为什么我需要指定我传递给函数的CSV文件的完整路径?当我手动执行相同的代码时,不需要路径。但是,当代码作为EXE文件(使用Pyinstaller编译(运行时,没有完整的路径就无法正常工作。即使我将CSV文件放在EXE文件的同一目录中,也无法找到文件和程序终止。我需要以编程方式通过的路径,但我不知道如何通过。请感谢任何建议。
您可以使用OS软件包来归一化并获取文件的绝对路径。
import os
def readcsv(myfile):
myfile_o = open(myfile, "rU")
reader = csv.reader(myfile_o, delimiter=",")
def csvmain():
readcsv(os.path.normpath(os.path.realpath('/Users/madrad/Dnl/Hei/demand.csv')))
csvmain()
我认为,有这样的事情,它应该起作用。我也这样做以在不同的路径和操作系统中获取配置文件。