欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python讀取excel指定列生成指定sql腳本的方法

 更新時間:2018年11月28日 10:31:10   作者:sy_y  
今天小編就為大家分享一篇Python讀取excel指定列生成指定sql腳本的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

需求

最近公司干活,收到一個需求,說是讓手動將數(shù)據(jù)庫查出來的信息復(fù)制粘貼到excel中,在用excel中寫好的公式將指定的兩列數(shù)據(jù)用update這樣的語句替換掉。

例如:

有個A庫,其中有兩個A.01和A.02字段,需要將這兩個字段替換到下面的sql語句中,

update A set A.01 = 'excel第一列的值' where A.02 = 'excel第二列的值'

雖然excel中公式寫好了,但是還需要將總計(jì)的那行復(fù)制粘貼到txt文檔中,所以索性太麻煩,果斷用Python寫了一個自動化的腳本,雖然查出的數(shù)據(jù)還需要手動復(fù)制excel中,但是后續(xù)操作即可用腳本完成

讀取excel指定列實(shí)現(xiàn)生成txt

廢話不多說直接上代碼:

#coding=utf-8
from openpyxl import load_workbook

#第一套servicebus.t_spis_servicebus_svcmain表的

#讀取excel的數(shù)據(jù)
def read_excel():
  #打開一個workbook
  wb = load_workbook(filename='xxx.xlsx')
  #獲取所有表格(worksheet)的名字
  sheets = wb.get_sheet_names()
  #遍歷每一個sheet,并且拿到worksheet對象
  for i in range(len(sheets)):
    ws = wb.get_sheet_by_name(sheets[i])
    #聲明list
    list_A_B = []
    #遍歷A,B列的所有數(shù)據(jù)值,ws.max_row:獲取最大行數(shù)
    for rowNum in range(1,ws.max_row+1):
      if (ws.cell(row=rowNum,column=1).value != None) and (ws.cell(row=rowNum,column=2).value != None):
        #ws.cell(row=rowNum,column=1).value:拿到指定列的行數(shù)據(jù)
        sql = 'update A set A.01=' + "'" + ws.cell(row=rowNum,column=1).value + "' " + 'where A.02=' + "'" + ws.cell(row=rowNum,column=2).value + "'"+ ';'
        list_A_B.append(sql)
    #print(list_A_B)
    text_save(list_A_B,'A.txt')
    print(str(sheets[i]) + '已完成!') 
  print('執(zhí)行成功!')

#將讀取的數(shù)據(jù)存入txt文檔中
def text_save(content,filename,mode='a'):
  #打開文件
  file = open(filename,mode)
  for i in range(len(content)):
    number = content[i] + '\n'
    file.write(number)
  file.close()

if __name__ == '__main__':
  read_excel()

總結(jié)

其中用到的是openpyxl這個庫,個人感覺非常好用,初步寫的時候參考了一下國外大佬的一篇博客,附上鏈接:

點(diǎn)我去看大佬博客

以上這篇Python讀取excel指定列生成指定sql腳本的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python中生成Epoch的方法

    Python中生成Epoch的方法

    下面小編就為大家?guī)硪黄狿ython中生成Epoch的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-04-04
  • Python幾種常見算法匯總

    Python幾種常見算法匯總

    這篇文章主要介紹了如何用Python實(shí)現(xiàn)幾種常見算法,文中代碼簡單易懂,方便大家更好的學(xué)習(xí),感興趣的朋友可以了解下
    2020-06-06
  • 深入分析在Python模塊頂層運(yùn)行的代碼引起的一個Bug

    深入分析在Python模塊頂層運(yùn)行的代碼引起的一個Bug

    幾個星期前, 我的同事跑過來, 說發(fā)現(xiàn)一個奇怪的Bug: 在使用Python的subprocess運(yùn)行子進(jìn)程時, 當(dāng)子進(jìn)程運(yùn)行失敗時居然沒有拋出錯誤!
    2014-07-07
  • Python3 如何開啟自帶http服務(wù)

    Python3 如何開啟自帶http服務(wù)

    這篇文章主要介紹了Python3 開啟自帶http服務(wù)的操作方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • Python安裝.whl文件流程以及問題解決方法

    Python安裝.whl文件流程以及問題解決方法

    WHL文件是以Wheel格式保存的Python安裝包,Wheel是Python發(fā)行版的標(biāo)準(zhǔn)內(nèi)置包格式,下面這篇文章主要給大家介紹了關(guān)于Python安裝.whl文件流程以及問題解決方法的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05
  • 對python3 中方法各種參數(shù)和返回值詳解

    對python3 中方法各種參數(shù)和返回值詳解

    今天小編就為大家分享一篇對python3 中方法各種參數(shù)和返回值詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • Python實(shí)現(xiàn)標(biāo)記數(shù)組的連通域

    Python實(shí)現(xiàn)標(biāo)記數(shù)組的連通域

    這篇文章主要為大家詳細(xì)介紹了如何通過Python實(shí)現(xiàn)標(biāo)記數(shù)組的連通域,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)Python有一定的幫助,需要的可以參考一下
    2023-04-04
  • 詳解Python字典查找性能

    詳解Python字典查找性能

    這篇文章主要為大家介紹了Python字典查找性能,具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助<BR>
    2021-12-12
  • 詳解Python調(diào)用系統(tǒng)命令的六種方法

    詳解Python調(diào)用系統(tǒng)命令的六種方法

    這篇文章主要介紹了詳解Python調(diào)用系統(tǒng)命令的六種方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • Python實(shí)現(xiàn)短網(wǎng)址ShortUrl的Hash運(yùn)算實(shí)例講解

    Python實(shí)現(xiàn)短網(wǎng)址ShortUrl的Hash運(yùn)算實(shí)例講解

    這篇文章主要介紹了Python實(shí)現(xiàn)短網(wǎng)址ShortUrl的Hash運(yùn)算,較為詳細(xì)的分析了Python短網(wǎng)址運(yùn)算的算法原理與相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2015-08-08

最新評論