Python 为什么表中的SQLite条目具有相同的日期戳?

Python 为什么表中的SQLite条目具有相同的日期戳?,python,sqlite,tkinter,Python,Sqlite,Tkinter,我这里有一个程序,可以监控温度并自动更新tkinter标签。我还希望它更新SQLite DB,但是它使用完全相同的日期戳在表中输入多个条目(尽管温度读数会有所不同)。任何想法都将不胜感激 import time import subprocess from tkinter import * from w1thermsensor import W1ThermSensor import time import datetime import sqlite3 root = Tk() id = 1 c

我这里有一个程序,可以监控温度并自动更新tkinter标签。我还希望它更新SQLite DB,但是它使用完全相同的日期戳在表中输入多个条目(尽管温度读数会有所不同)。任何想法都将不胜感激

import time
import subprocess
from tkinter import *
from w1thermsensor import W1ThermSensor
import time
import datetime
import sqlite3
root = Tk()
id = 1

conn = sqlite3.connect('temp_sensor2.db')
c = conn.cursor()

sensor = W1ThermSensor()
temperature = sensor.get_temperature()

t = int(time.time())
date = str (datetime.datetime.fromtimestamp(t).strftime('%d-%m-%Y %H:%M:%S'))
global tempLabel1


def get_temp(period_ms):

    temperature = sensor.get_temperature()
    tempLabel1['text'] = temperature
    tempLabel1.after(period_ms, get_temp, period_ms)

    c.execute('''INSERT INTO datetemp VALUES (?, ?, ?)''',(id, date, temperature));
    conn.commit()

root.title('Temperature')

tempLabel2 = Label(root, text="Temperature is ")
tempLabel2.pack()
tempLabel1 = Label(root, width=25)
tempLabel1.pack()

get_temp(1000)


root.mainloop()
当程序启动时,这两行代码只运行一次,
date
变量在此之后不会更改

如果在
get_temp()
函数中移动这些行,则它将使用当前时间戳

当程序启动时,这两行代码只运行一次,
date
变量在此之后不会更改


如果将这些行移到
get_temp()
函数中,则它将使用当前时间戳。

您是否为
date
指定了新值,以便更新?(如果需要当前时间,最好使用a,将insert改为
insert-INTO-datetemp值(?,CURRENT\u-TIMESTAMP,?)
。是否为
date
指定新值以更新它?(也最好使用a,将insert改为
insert-INTO-datetemp值。)(?,当前时间戳,?)
如果您想要当前时间。嗨,John,是的,就是这样!变量在第一次运行时没有在函数内部更新。感谢您的回复,现在很明显-我想我盯着它看得太久了!嗨,John,是的,就是这样!变量在运行后没有在函数内部更新我第一次跑了。谢谢你的回复,现在很明显——我想我盯着它看得太久了!
t = int(time.time())
date = str (datetime.datetime.fromtimestamp(t).strftime('%d-%m-%Y %H:%M:%S'))