![](/img/trans.png)
[英]Why does python can't import pathlib when i run it from linux terminal instead of an IDE(Thonny)
[英]Raspberry Pi python code running from Thonny IDE but does not run from the terminal
我正在嘗試從單個 python 代碼運行三個 python 代碼。 但是,代碼不會從終端運行。 但是,當我嘗試使用 Thonny IDE 運行它時,所有代碼都運行良好。 下面是我試圖執行的代碼:
#!/usr/bin/python3
import time
import threading
import os
def startProgram(i):
if i==0 or i=='0':
time.sleep(1)
os.system("sudo python3 /home/pi/a.py")
print("Create tunnel code executed")
elif i==1 or i=='1':
time.sleep(1)
os.system("sudo python3 /home/pi/b.py")
print("Create capture http code executed")
elif i==2 or i=='2':
time.sleep(1)
os.system("sudo python3 /home/pi/c.py")
print("Create mail transaction details code executed")
else:
print("Value not in range")
pass
def main():
for i in range(3):
print(i)
t = threading.Thread(target = startProgram, daemon=True, args=(i,))
t.start()
if __name__=="__main__":
main()
終端中不會引發錯誤。 代碼只是運行並退出,但其他 3 個程序永遠不會執行。 我正在嘗試使用以下命令在終端中執行 python 代碼:
python3 啟動程序.py
此外,我已經單獨測試了所有代碼,它們運行時沒有任何錯誤。 請讓我知道我哪里出錯了以及如何解決這個問題。 提前致謝。
既然其他腳本都是 all.py 的,為什么不直接導入它們呢?
假設 startProgram.py 與您的其他文件位於同一文件夾中-
from time import sleep
from threading import Thread
import a, b, c
def startProgram(i):
try:
sleep(1)
[a.main(), b.main(), c.main()][int(i)]
except:
print("Value not in range")
def main():
for i in range(3):
print(i)
Thread(target = startProgram, daemon=True, args=(i,)).start()
if __name__ == "__main__":
main()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.