我有一个函数来收集使用部分预定义路径的温度(来自文本文件的值)。但是,如果温度传感器未加载(断开连接),有时路径不存在。如果路径不可用,如何设置条件或异常以跳过循环?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