Python/Spyder:通用工作目录
Python/Spyder: General Working Directory
到目前为止,我有打开文本文件的代码,将其处理成 pandas 数据文件,然后导出到 excel。
我正在与其他人共享此代码,我们在 Spyder 中都有相同的工作目录。所有代码都运行良好,我想操作的唯一行是文件的打开和文件的导出。
with open(r'C:\Users\"my_name"\Desktop\data\file.txt', 'r') as data_file:
这里的问题是,我想将我的工作目录设置为“\data”,这样我就可以写:
with open(r'file.txt', 'r') as data_file:
这样,我发送给他们的人,他们的计算机上也有“\data”作为他们的工作目录,他们可以 运行 代码,它会 select "file.txt" 在他们的数据目录中。
您在技术上寻找的答案是使用 os.chdir()
如下
import os
os.chdir('.', 'data')
#THE REST OF THE CODE IS THE SAME
with open(r'file.txt', 'r') as data_file:
然而,更安全的答案是
def doTheThing(fName):
return os.path.join(os.getcwd(),'data',fName)
with open(doTheThing('file.txt'), 'r') as data_file:
到目前为止,我有打开文本文件的代码,将其处理成 pandas 数据文件,然后导出到 excel。
我正在与其他人共享此代码,我们在 Spyder 中都有相同的工作目录。所有代码都运行良好,我想操作的唯一行是文件的打开和文件的导出。
with open(r'C:\Users\"my_name"\Desktop\data\file.txt', 'r') as data_file:
这里的问题是,我想将我的工作目录设置为“\data”,这样我就可以写:
with open(r'file.txt', 'r') as data_file:
这样,我发送给他们的人,他们的计算机上也有“\data”作为他们的工作目录,他们可以 运行 代码,它会 select "file.txt" 在他们的数据目录中。
您在技术上寻找的答案是使用 os.chdir()
如下
import os
os.chdir('.', 'data')
#THE REST OF THE CODE IS THE SAME
with open(r'file.txt', 'r') as data_file:
然而,更安全的答案是
def doTheThing(fName):
return os.path.join(os.getcwd(),'data',fName)
with open(doTheThing('file.txt'), 'r') as data_file: