樹莓派下py程式開發會遇到兩大終極問題:
1.撰寫好的程式如何開機運行
2.程式自動運行后如何管理例如切換行程,殺死行程
1現在已經基本解決了,通過創建xxx.desktop檔案可實作自動運行,具體方法網上很多不細說了。其他的像什么sh腳本啟動啦,做成服務啟動啦親測無效,也可能是我水平問題,廣大菜比建議不要試了
,結果一般和我一樣2.這個問題至今無解,程式自動運行后通過ps x命令能看到py行程,但是無論你用kill 還是fg命令都管理不了,這就導致了一個很大問題,py程式中所有print輸出結果我們看不到,即便程式已經正常運行了。
不知道哪位 大蝦 能針對問題2給個解決方案或思路
這里跪謝了

uj5u.com熱心網友回復:
樓主,解決了嗎?我也有同樣的疑問,對于行程如進行有效的管理吶,行程如何有控的停止?uj5u.com熱心網友回復:
from sympy import *α = symbols('α')
v=250
l=1000
y=100
m=4
k=0.35
g=9.8
v=float(v)
l=float(l)
y=float(y)
def f(α):
s=(m*g/(k*v*cos(α))+tan(α))*l+m**2*g/k**2*ln(1-0.0875*l/(v*cos(α)))-y
return s
d=0
while f(d)<0:
d=d+0.01
if f(d)>0:
b=d
a=d-0.01
break
elif d>1.6:
break
x=b
while f(x)>0:
x=x+0.01
if f(x)<0:
e=x
c=x-0.01
break
elif x>1.6:
break
print(a)
print(b)
print(c)
print(e)
print(f(a))
print(f(b))
print(f(c))
print(f(e))
while f(a)*f(b)<0:
if f(a)*f((a+b)/2)<0:
b=(a+b)/2
elif f((a+b)/2)*f(b)<0:
a=(a+b)/2
elif (f(a)-f(b))**2<=10**(-10):
print("α(1)=",end='')
print(57.29578*(a+b)/2)
break
while f(c)*f(e)<0:
if f(c)*f((c+e)/2)<0:
e=(c+e)/2
elif f((c+e)/2)*f(e)<0:
c=(c+e)/2
elif (f(c)-f(e))**2<=10**(-1):
print("α(1)=",end='')
print(57.29578*(c+e)/2)
break
本人新手,自己編的這個二分法求根不知道為什么有問題,第二個根出不來,樓主能不能幫我看一下
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/257240.html
上一篇:有沒有搞反匯編的朋友?
下一篇:求大神幫我看看
