첫 번째 글은 Python을 배우는 초기 단계입니다. 부드럽게하십시오. 작동하는 코드 조각이 있지만 출력을 읽기가 어렵습니다. 화면을 아래로 스크롤하는 상향식 목록이 아닌 정적으로 화면에 센서를 표시하고 싶습니다. 인쇄 기능을 변경하여 쉘 윈도우의 단일 위치에서 매 초마다 온도를 업데이트 할 수 있습니까? 항상 화면에 동일한 위치에 요소를 인쇄하려면주어진 위치에 텍스트를 표시하는 방법은 무엇입니까?
import os
import glob
import time
os.system('modprobe w1-gpio')
os.system('modprobe w1-therm')
def read_temp_raw(i):
base_dir = '/sys/bus/w1/devices/'
device_folder = glob.glob(base_dir + '28*')[i]
device_file = device_folder + '/w1_slave'
f = open(device_file, 'r')
lines = f.readlines()
f.close()
return lines
def read_temp(i):
lines = read_temp_raw(i)
while lines[0].strip()[-3:] != 'YES':
time.sleep(0.2)
lines = read_temp_raw()
equals_pos = lines[1].find('t=')
if equals_pos != -1:
temp_string = lines[1][equals_pos+2:]
temp_c = float(temp_string)/1000.0
temp_f = temp_c * 9.0/5.0 + 32.0
return temp_c, temp_f
while True:
print "Sensor 1", (read_temp(0))
print "Sensor 2", (read_temp(1))
print "Sensor 3", (read_temp(2))
time.sleep(2)
StackOverflow에 오신 것을 환영합니다. 당신의 질문 제목은 센서보다 콘솔 텍스트 그리기에 관한 질문 내용과 일치하지 않습니다. –
사실, 위의 코드에서 센서 부분이 도움이 될 수 있습니다. 재미있게도 필자는 sys.stdout.write와 캐리지 리턴을 사용하여 보았지만 아직 작동시키지 못했습니다. – Marko
질문에 더 잘 부합하도록 제목이 바뀌 었습니다. 마음에 들지 않았 으면 좋겠어요. 콘텐츠를 반영하도록 내용을 바꾸어주세요. – zmo