【问题标题】:How can I have Python look for files in the location of the program?如何让 Python 在程序所在位置查找文件?
【发布时间】:2012-03-10 08:43:42
【问题描述】:

我遇到了一个程序问题,我必须在其中加载图像和腌制对象:我的 Python 软件似乎没有在程序的位置中查找。我的程序位于名为“King's Capture”的文件夹中,而我的图像位于“King's Capture”中标有“数据”的文件夹中。无论我将文件夹“King's Capture”放在哪里,我都想让 python 找到这些文件。在我看来,python 应该已经在程序本身所在的文件夹中查找,但显然不是。我该怎么办?

【问题讨论】:

    标签: python image search directory search-path


    【解决方案1】:

    您可以通过特殊变量__file__ 访问当前脚本文件的路径。所以在你的主程序脚本中试试这个:

    import os
    // ...
    data_dir = os.path.join(os.path.dirname(__file__), 'data')
    

    【讨论】:

      【解决方案2】:

      试试这个

      import sys, os
      
      ROOT = os.path.dirname(os.path.abspath(__file__))
      directory = ROOT + os.path.sep + 'data'
      for eachFile in os.listdir(directory):
          fileName = directory + os.path.sep + eachFile
          print fileName
      

      【讨论】:

      • 很好的解决方案! :) 我选择 Gsteff 是因为它更简单,但我必须说你的反应快速有效。 :D
      • 只有一件事:您应该使用 os.path.join() 而不是手动附加分隔符。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-01-23
      • 1970-01-01
      • 1970-01-01
      • 2016-05-18
      • 1970-01-01
      • 2023-01-25
      • 2015-09-15
      相关资源
      最近更新 更多