私はBACプロジェクトを作成しています。私は私のMySQLデータベースからクエリ時間が欲しいです。私のデータベースであるこの時間で、私はリアルタイムと比較したいと思います。私はTypeError:datetime.timeをタプルと比較できません
...ので、Python言語で始まる[ここで、それは私のデータベースです] [ここ
https://i.stack.imgur.com/ROxnQ.png]は私のコードですが、私はエラー「TypeError例外を:datetime.timeのを比較することはできませんタプルする」必要があり
import RPi.GPIO as GPIO
import time
import datetime
import MySQLdb
GPIO.setmode(GPIO.BOARD)
GPIO.setup(40, GPIO.OUT)
GPIO.setup(38, GPIO.OUT)
db = MySQLdb.connect(host="localhost", # your host, usually localhost
user="root", # your username
passwd="Orel_27130", # your password
db="projet") # name of the data base
while True:
now = datetime.datetime.time(datetime.datetime.now())
print (now)
print time.strftime("%H:%M:%S")
cursor = db.cursor()
cursor.execute("SELECT time_open FROM time WHERE id = 2")
time_open = cursor.fetchall()
print time_open
if time_open < now:
print ("Fermee")
GPIO.output(38, False)
GPIO.output(40, True)
else:
print ("Ouvert")
GPIO.output(38, True)
GPIO.output(40, False)
出力:
((datetime.datetime(2017, 1, 23, 13, 0),),)
Traceback (most recent call last):
File "mysql.py", line 27, in <module>
if time_open < now:
TypeError: can't compare datetime.time to tuple
"print time_open"文での印刷は何ですか? "time_open"変数のタイプは何ですか? –
print time_openは、スクリプトがデータを正しく照会するかどうかを確認するためのものです。 – iDezwin
'print(now)'は 'print now'と同じことです。 'datetime'オブジェクトの*文字列表現*を出力します。**これはMySQLから返されたデータと同じに見えるかもしれませんが、同じ種類のオブジェクトにはなりません。 –