Python RPi - 当 运行 来自另一个脚本的脚本时找不到文件
Python RPi - File not found when running script from another script
我正在尝试从另一个 python 脚本 运行 一个 python 脚本 Raspberry Pi 3 和 Raspbian。几个小时以来,我一直在努力寻找方法来做到这一点,但没有找到任何有效的方法。我尝试了一些方法,但它要么说没有执行该文件的权限,要么找不到它。我不知道我做错了什么。我需要通过新控制台(新进程)中的主脚本 运行 其他脚本的多个实例,并让它们 运行ning (我不希望它们 return 任何东西主脚本)。谁能帮我?因为使用 Windows 它真的很容易,因为程序运行良好,直到我尝试在 Linux 上 运行 它(使用 Windows,我使用 os.startfile)。
在test.py中:
print("test1")
input()
在main.py中:
import os
import subprocess
print("main")
os.system("python test.py")
input()
在控制台中:
主要的
python: 无法打开文件 'test.py': [Errno 2] 没有那个文件或目录
在main.py中:
import os
import subprocess
print("main")
subprocess.Popen("python test.py",shell=True)
input()
在控制台中:
主要的
python: 无法打开文件 'test.py': [Errno 2] 没有那个文件或目录
在main.py中:
import os
import subprocess
print("main")
subprocess.call("python test.py",shell=True)
input()
在控制台中:
主要的
python: 无法打开文件 'test.py': [Errno 2] 没有那个文件或目录
我尝试了更多方法,但我不记得了。也许我做错了什么?
编辑:我现在可以 运行 脚本而 os.chdir 没有任何问题(感谢 J H)。我现在的问题是它在与 main.py 相同的控制台 window 中打印测试,我需要它来为 test.py 创建另一个进程。有什么解决办法吗?
编辑 2:我终于可以从 main.py 开始 test.py 的新进程了!我使用 os.system('xdg-open "test.py"') 使用默认应用程序打开 test.py。总之多谢JH,不然一直提示找不到文件
最终 main.py:
import os
print("main")
os.chdir('/home/pi/Desktop/')
os.system('xdg-open test.py')
input()
提前致谢!
打印出来 os.getcwd()
将帮助您调试它。
要么提供完全限定的路径名,/some/where/test.py,要么在执行 test.py.
之前使用 os.chdir('/some/where')
我正在尝试从另一个 python 脚本 运行 一个 python 脚本 Raspberry Pi 3 和 Raspbian。几个小时以来,我一直在努力寻找方法来做到这一点,但没有找到任何有效的方法。我尝试了一些方法,但它要么说没有执行该文件的权限,要么找不到它。我不知道我做错了什么。我需要通过新控制台(新进程)中的主脚本 运行 其他脚本的多个实例,并让它们 运行ning (我不希望它们 return 任何东西主脚本)。谁能帮我?因为使用 Windows 它真的很容易,因为程序运行良好,直到我尝试在 Linux 上 运行 它(使用 Windows,我使用 os.startfile)。
在test.py中:
print("test1")
input()
在main.py中:
import os
import subprocess
print("main")
os.system("python test.py")
input()
在控制台中: 主要的 python: 无法打开文件 'test.py': [Errno 2] 没有那个文件或目录
在main.py中:
import os
import subprocess
print("main")
subprocess.Popen("python test.py",shell=True)
input()
在控制台中: 主要的 python: 无法打开文件 'test.py': [Errno 2] 没有那个文件或目录
在main.py中:
import os
import subprocess
print("main")
subprocess.call("python test.py",shell=True)
input()
在控制台中: 主要的 python: 无法打开文件 'test.py': [Errno 2] 没有那个文件或目录
我尝试了更多方法,但我不记得了。也许我做错了什么?
编辑:我现在可以 运行 脚本而 os.chdir 没有任何问题(感谢 J H)。我现在的问题是它在与 main.py 相同的控制台 window 中打印测试,我需要它来为 test.py 创建另一个进程。有什么解决办法吗?
编辑 2:我终于可以从 main.py 开始 test.py 的新进程了!我使用 os.system('xdg-open "test.py"') 使用默认应用程序打开 test.py。总之多谢JH,不然一直提示找不到文件
最终 main.py:
import os
print("main")
os.chdir('/home/pi/Desktop/')
os.system('xdg-open test.py')
input()
提前致谢!
打印出来 os.getcwd()
将帮助您调试它。
要么提供完全限定的路径名,/some/where/test.py,要么在执行 test.py.
之前使用os.chdir('/some/where')