Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Excel根据';s在第1单元_Python_Sql_Sqlite - Fatal编程技术网

Python Excel根据';s在第1单元

Python Excel根据';s在第1单元,python,sql,sqlite,Python,Sql,Sqlite,所以我有一个sql数据库存储一些信息。我想进入一个excel电子表格,其中10位数的电话号码都在单元格A中,如果sql文件中的姓名与号码匹配,则在单元格B中的单元格A旁边添加个人姓名 这是我做的: import xlrd import sqlite3 import xlsxwriter alpha = ("B") bravo = 1 charlie = (alpha + str(bravo)) conn = sqlite3.connect('test.db') c = conn.curs

所以我有一个sql数据库存储一些信息。我想进入一个excel电子表格,其中10位数的电话号码都在单元格A中,如果sql文件中的姓名与号码匹配,则在单元格B中的单元格A旁边添加个人姓名

这是我做的:

import xlrd
import sqlite3
import xlsxwriter


alpha = ("B") 
bravo = 1 
charlie = (alpha + str(bravo))
conn = sqlite3.connect('test.db')
c = conn.cursor()
c.execute(''' SELECT fname, lname, number FROM info''')
all_rows = c.fetchall()
    for row in all_rows:
        delta = ('{0}'.format(row[0])) # First Name
        echo = ('{0}'.format(row[1])) # Last Name
        foxtrot = ('{0}'.format(row[2])) # Phone Number
        golf = (delta + echo) # Full Name
        hotel = 0 

        book = xlrd.open_workbook("test.xlsx")
        first_sheet = book.sheet_by_index(0)
        cell = first_sheet.cell(hotel,0).value

        if cell == foxtrot:
            worksheet.write((charlie), golf)
            bravo += 1
            hotel += 1
我在上面的例子中尝试做的是:

  • 创建一个可以更改的变量,以便我可以遍历列中的所有单元格
  • 转到我们的数据库文件并提取相关信息
  • 把所有的信息分解成变量,这样我们就可以比较它们了
  • 读取excel文件
  • 将数据库中的数字与excel文件中的数字进行比较
  • 如果有匹配项,请在名称中写入

  • 我很确定我的错误在于如何将excel单元格与从数据库收集的信息进行比较。任何帮助都会很好。谢谢各位。

    除非效率不是个大问题,否则我建议将excel读给pandas,然后写回整个文件。我会调查pandas。谢谢你的提示。