Raspberry Pi Python从路径运行程序



我目前正在尝试让一个Python程序在我的Raspberry Pi上自动启动。问题是,程序正在读取一个配置文件,该文件与程序本身位于同一文件夹中。因此,当我从IDE运行程序时,它运行得很好。

如果我尝试从控制台(或rc.local(运行它,它找不到配置文件。如果我cd到文件夹中并尝试运行它,它会再次正常工作。

那么,我如何告诉Python或rc.local从文件夹中运行呢?我曾试图寻找解决方案,但找不到。

我不想用它的完整路径来寻址配置文件,因为我在电脑上编程和调试,但在树莓上使用程序,所以每次在设备之间切换时我都必须更改路径。

希望有人能帮我,提前谢谢。

我在这里看到了几种可能的方法:

  • 在树莓pi上,您可以在运行python程序之前将cd保存到正确的目录:cd <destination dir> && python your_program.py,或者为此编写一个两行shell脚本
  • 向python传递一个可选的命令行参数,该参数包含配置文件的绝对路径。如果没有给定参数,请使用当前路径
  • 尝试自动检测python程序运行的环境(例如,使用gethostname()或通过设置环境变量,如图所示(

最新更新