2

我有一个脚本,用于读取 excel 文件并更新 SQL 数据库。我使用循环每 30 秒读取一次 excel 文件。但是我只想在excel文件更改时更新数据库

如果我在循环循环时使用 != 运算符,它会刷新“temp”的值,因此不会记录该值是相同的。

有谁知道如何解决这个问题..?

谢谢!编辑:更新以使我的问题更清楚!

def update(): 
    threading.Timer(1, update).start()
    book = open_workbook('bet.xls')


    def odds():
        sheet = book.sheet_by_name('xyz')
        match_sheet = sheet.cell(5,0).value  
        data = book.sheet_by_name(sheet)
        vv = data.cell(3,26).value

        temp= None 

        if vv != temp:
            print 'hello'

        temp= vv

odds()

更新()

4

1 回答 1

1

是的,Python 内置容器按值(元组、列表和字典)进行比较。

像这样的东西(我使用列表理解来增加幻想):

//init
pvv=None

<...>

//iteration
vv= [data.cell(i,j).value for (i,j) in ((2,26),(3,26),(4,26))]
if vv!=pvv: 
    //do something
    pvv=vv
于 2013-02-11T14:18:03.753 回答