我有一個函數來收集使用部分預定義路徑的溫度(來自文本文件的值)。但是,如果溫度傳感器未加載(斷開連接),有時路徑不存在。如果路徑不可用,如何設置條件或異常以跳過循環?Python Raspberry pi - 如果路徑不存在,跳過循環
我想繼續使用,但我不知道用它來設置什麼條件。
def read_all():
base_dir = '/sys/bus/w1/devices/'
sensors=['28-000006dcc43f', '28-000006de2bd7', '28-000006dc7ea9', '28-000006dd9d1f','28-000006de2bd8']
for sensor in sensors:
device_folder = glob.glob(base_dir + sensor)[0]
device_file = device_folder + '/w1_slave'
def read_temp_raw():
catdata = subprocess.Popen(['cat',device_file], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
out,err = catdata.communicate()
out_decode = out.decode('utf-8')
lines = out_decode.split('\n')
return lines
可能希望'繼續'在那裏,而不是'break',所以剩下的傳感器仍在處理中 – tom
更新以繼續@tom。 – luoluo
添加所建議的內容後,當傳感器丟失時,它將在循環中停止並報告IndexError:列表索引超出範圍。 – Miroslav