1

小さな温室用のPythonプログラムを作成して、さまざまな条件をテストしています。プログラムが終了したら、5分間待ってから、すべてのテストを再度実行する必要があります。これは私の初めての完全なPythonプログラムなので、低学習曲線領域で答えを維持できれば、非常に応用されます。

例:

temp=probe1  
humidity=probe2  
CO2=probe3  

if temp==25:  
      print ("25)"  
if humidity==90:  
      print ("90")  
if CO2==1000  
      print ("1000")  

import time  
time.sleep (300) 
start again from top until keypress
4

1 に答える 1

2

今持っているものをwhile True ループに入れて、目的の結果を得ることができます。これは、Ctrl-C を押してプログラムを中断するまで、永久に実行され、5 分ごとに測定が行われます。

import time
while True:
    temp=probe1  
    humidity=probe2  
    CO2=probe3  

    if temp==25:  
          print ("25") 
    if humidity==90:  
          print ("90")  
    if CO2==1000  
          print ("1000")    
    time.sleep (300) 

しかし、あなたのセンサーがあなたがチェックした値を正確に与える可能性がどれほどあるのか疑問に思っています. センサー値の精度によっては、何時間も、あるいはそれ以上出力がない場合もあります。たとえば、丸められたセンサー値を確認したい場合がありますif round(temp) == 25

tempまたは、 がいつ25 以上か知りたい場合は、 で確認できますif temp >= 25

もう 1 つの可能性は、センサー データを常に出力し、値がしきい値よりも高い場合に追加の警告を出力することです。

import time
while True:
    temp=probe1  
    humidity=probe2  
    CO2=probe3  

    print("Temp:", temp, "degrees")
    if temp>=25:  
          print ("  Too hot!")  

    print("Humidity:", humidity, "%")
    if humidity>=90:  
          print ("  Too humid!")  

    print("CO2:", CO2, "units")
    if CO2>=1000  
          print ("  Too much CO2!")    
    time.sleep (300) 
于 2013-02-14T19:27:59.387 に答える