Home > Software design >  Value of string to be a trigger
Value of string to be a trigger

Time:02-17

I'm trying to get my code to get a string of data from a sensor, and then do something when it reads a specific value.

The following code is how I'm receiving the data now (this is just a test) the function is called earlier in the code at the time where I want it to be called.

def gettemperature(self)
    temp = self.board.temp_sensor
    print("Temperature is "   str(round(temp))   " degrees.")

This code works, and returns the temperature value rounded to the terminal, but how could I, instead of printing the value to the terminal, make it so when that string of rounded value is say, 200 degrees, then it prints the temperature value? instead of printing it every 2 seconds (the frequency of the data being received, as per another part of the code)

Using something like

if temp = 200 
then print(blahblah)

in short, the above code is what I'm trying to do. If the temp equals a certain value, then something else will happen.

That last code doesn't work. I'm pretty new to coding, so I'm assuming I'm either not going about this the right way, or the syntax of how I'm going about trying to get that value to do something isn't correct (obviously)

Thanks for any help! I'm surprised I got this far, haha.

CodePudding user response:

It would be better if your function gettemperature would return something and then print the result in the condition:

def gettemperature()
    temp = board.temp_sensor
    return temp


temp = gettemperature()

if temp == 200:
    print("Temperature is "   str(round(temp))   " degrees.")

CodePudding user response:

Before using stackoverflow, I'd recommend learning all this stuff from some basic course, as you'll get to learn the stuff yourself rather then get the answer from someone else. Try learning conditional statements. what you want is, to put a conditional statement which triggers if temperature is greater than 200.

If the temp is always a number in string data type, you can use the below code.

def gettemperature(self):
    temp = self.board.temp_sensor
    print("Temperature is "   str(round(temp))   " degrees.")
    temp=int(temp) #typecasting string datatype to integer
    if temp == 200:
        print("Temperature is high")
  • Related