如何在Python中根据用户输入运行各种温度读数?

如何在Python中根据用户输入运行各种温度读数?,python,python-3.x,raspberry-pi,sensors,Python,Python 3.x,Raspberry Pi,Sensors,对于Python(Raspberry Pi)编程,我是一个完全的业余爱好者,我试图实现的是询问用户他想要的样本数量,然后读取并打印出这样数量的样本,每次读取之间用一个简单的按键隔开 我所拥有的是一个简单的设置,带有一个DHT11温度和湿度传感器、一个10 KΩ电阻器、一对跨接电缆,当然还有一个试验板。按照以下代码测试时,电路工作正常: import Adafruit_DHT import time DHT_SENSOR = Adafruit_DHT.DHT11 DHT_PIN = 4 whi

对于Python(Raspberry Pi)编程,我是一个完全的业余爱好者,我试图实现的是询问用户他想要的样本数量,然后读取并打印出这样数量的样本,每次读取之间用一个简单的按键隔开

我所拥有的是一个简单的设置,带有一个DHT11温度和湿度传感器、一个10 KΩ电阻器、一对跨接电缆,当然还有一个试验板。按照以下代码测试时,电路工作正常:

import Adafruit_DHT
import time

DHT_SENSOR = Adafruit_DHT.DHT11
DHT_PIN = 4

while True:
    humidity, temperature = Adafruit_DHT.read(DHT_SENSOR, DHT_PIN)
    if humidity is not None and temperature is not None:
        print("Temperature={0:0.1f}C Humidity={1:0.1f}%".format(temperature, humidity))
    else:
        print("Sensor failed. Check wiring.");
    time.sleep(3)
这段代码的作用本质上是每隔三秒无限期地读取/打印温度和湿度

然而,正如我所说,我试图实现的是询问用户他想要的样本数量,然后读取并打印出这样数量的样本,每次读取之间用一个简单的按键隔开。以下是我一直在研究的代码:

import Adafruit_DHT

DHT_SENSOR = Adafruit_DHT.DHT11
DHT_PIN = 4

n = int (input("Number of samples?\n"))
print()


for x in range (n):
    input()
    while True:
        humidity, temperature = Adafruit_DHT.read(DHT_SENSOR, DHT_PIN)
    if humidity is not None and temperature is not None:
        print("Temperature={0:0.1f}C Humidity={1:0.1f}%".format(temperature, humidity))
    else:
        print("Sensor failed. Check wiring.")
    input()
所需操作的示例:

  • “样本数量?”
  • 二,
  • 用户按下任意键
  • “温度=23.0摄氏度湿度=63.0%”
  • 用户按下任意键
  • “温度=24.0摄氏度湿度=64.0%”

  • 你知道如何修复代码,使其符合我的要求吗?

    你不再需要while循环了

    for循环本身将重复请求的次数

    for x in range (n):
        input()
        humidity, temperature = Adafruit_DHT.read(DHT_SENSOR, DHT_PIN)
        if humidity is not None and temperature is not None:
            print("Temperature={0:0.1f}C Humidity={1:0.1f}%".format(temperature, humidity))
        else:
            print("Sensor failed. Check wiring.")
        input()