通過實例學(xué)習(xí)Python Excel操作
這篇文章主要介紹了通過實例學(xué)習(xí)Python Excel操作,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
1.python 讀取Excel
# -*- coding: utf-8 -*-
import xlrd
import os,sys
reload(sys)
sys.setdefaultencoding("utf8")
filename = 'text.xlsx'
filename = filename.decode('utf-8')
book = xlrd.open_workbook(filename)
sheet1 = book.sheets()[0]
nrows = sheet1.nrows
print u'表格總行數(shù) ',nrows
ncols = sheet1.ncols
print u'表格總列數(shù) ',ncols
##查詢表頭
excelhead = []
for i in range(ncols):
excel_head_values = sheet1.col_values(i)
excelhead.append(excel_head_values[0])
##查詢行的值
excelhang = []
for i in range(nrows)[1:]:
row_values = sheet1.row_values(i)
print 'User:' + row_values[2] + ' Filename:' + row_values[0] + ' Tablename:' + row_values[1]
text.xlsx內(nèi)容如下:

運行結(jié)果:
表格總行數(shù) 4 表格總列數(shù) 3 User:edw Filename:sh002_zyb_tx_chk_h0200.py Tablename:SH002_ZYB_TX_CHK_H0200 User:etl Filename:sh002_a_h0200.py Tablename:SH002_A_H0200 User:app Filename:sh002_b_h0200.py Tablename:SH002_B_H0200
2.python 寫入Excel
# -*- coding: utf-8 -*-
import xlwt
import pymysql
def sql_connect(sql):
conn = pymysql.connect(host='192.168.3.xx',port=3306, user='root', password='123456',db='hive',charset='utf8')
cur = conn.cursor()
cur.execute(sql)
data = cur.fetchall()
cur.close()
conn.close()
return data
def write_excel(filename, data):
book = xlwt.Workbook() #創(chuàng)建excel對象
sheet = book.add_sheet('PARTITIONS') #添加一個表Sheet
c = 0 #保存當前列
for d in data: #取出data中的每一個元組存到表格的每一行
for index in range(len(d)): #將每一個元組中的每一個單元存到每一列
sheet.write(c,index,d[index])
c += 1
book.save(filename) #保存excel
sql = 'select * from PARTITIONS limit 100'
res = sql_connect(sql)
write_excel('partitions.xls', res)
運行結(jié)果:

3.python Excel寫入表內(nèi)
# -*- coding: utf-8 -*-
import xlwt
import xlrd
import pymysql
#從excel讀取數(shù)據(jù)寫入mysql
def excel_to_mysql(filename):
conn = pymysql.connect(host='192.168.3.xx',port=3306, user='root', password='123456',db='hive',charset='utf8')
cur = conn.cursor() #連接數(shù)據(jù)庫
book = xlrd.open_workbook(filename)
sheet = book.sheet_by_name('Sheet1')
rows = sheet.nrows #獲取行數(shù)
for r in range(1,rows): #將標題之外的其他行寫入數(shù)據(jù)庫
r_values = sheet.row_values(r)
sql = 'insert into user_zw values(%s,%s,%s)' #有幾個字段需要幾個%s
data = cur.execute(sql,r_values) #將每一行插入sql
conn.commit() #插入所有數(shù)據(jù)后提交
cur.close()
conn.close()
excel_to_mysql('user_zw.xls')
user_zw.xls的內(nèi)容:

查詢表中內(nèi)容:

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
OpenCV+MediaPipe實現(xiàn)手部關(guān)鍵點識別
這篇文章主要介紹了如何通過OpenCV MediaPipe實現(xiàn)手部關(guān)鍵點識別,文中的示例代碼講解詳細,對我們學(xué)習(xí)或工作有一定的價值,需要的可以參考一下2022-01-01
解決Python?出現(xiàn)File?“<stdin>“,?line?1非語法錯誤的問題
這篇文章主要介紹了Python?出現(xiàn)File?“<stdin>“,?line?1非語法錯誤的解決辦法,本文給大家講解的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-03-03
Django初步使用Celery處理耗時任務(wù)和定時任務(wù)問題
這篇文章主要介紹了Django初步使用Celery處理耗時任務(wù)和定時任務(wù)問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-12-12
Python的ORM框架中SQLAlchemy庫的查詢操作的教程
這篇文章主要介紹了Python的ORM框架中SQLAlchemy庫的查詢操作的教程,SQLAlchemy用來操作數(shù)據(jù)庫十分方便,需要的朋友可以參考下2015-04-04
使用Python的urllib2模塊處理url和圖片的技巧兩則
這篇文章主要介紹了使用Python的urllib2模塊處理url和圖片的兩個小技巧,分別是獲取帶有中文參數(shù)的url內(nèi)容和獲取遠程圖片的大小和尺寸,需要的朋友可以參考下2016-02-02

