黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

Python讀寫(xiě)Excel文件的實(shí)例

系統(tǒng) 2289 0

最近由于經(jīng)常要用到Excel,需要根據(jù)Excel表格中的內(nèi)容對(duì)一些apk進(jìn)行處理,手動(dòng)處理很麻煩,于是決定寫(xiě)腳本來(lái)處理。首先貼出網(wǎng)上找來(lái)的讀寫(xiě)Excel的腳本。
1.讀取Excel(需要安裝xlrd):

            
#-*- coding: utf8 -*-
import xlrd
 
fname = "reflect.xls"
bk = xlrd.open_workbook(fname)
shxrange = range(bk.nsheets)
try:
 sh = bk.sheet_by_name("Sheet1")
except:
 print "no sheet in %s named Sheet1" % fname
#獲取行數(shù)
nrows = sh.nrows
#獲取列數(shù)
ncols = sh.ncols
print "nrows %d, ncols %d" % (nrows,ncols)
#獲取第一行第一列數(shù)據(jù) 
cell_value = sh.cell_value(1,1)
#print cell_value
 
row_list = []
#獲取各行數(shù)據(jù)
for i in range(1,nrows):
 row_data = sh.row_values(i)
 row_list.append(row_data)

          

2.寫(xiě)入Excel(需安裝pyExcelerator)

            
from pyExcelerator import *

w = Workbook()  #創(chuàng)建一個(gè)工作簿
ws = w.add_sheet('Hey, Hades')  #創(chuàng)建一個(gè)工作表
ws.write(0,0,'bit') #在1行1列寫(xiě)入bit
ws.write(0,1,'huang') #在1行2列寫(xiě)入huang
ws.write(1,0,'xuan') #在2行1列寫(xiě)入xuan
w.save('mini.xls')  #保存
          

3.再舉個(gè)自己寫(xiě)的讀寫(xiě)Excel的例子
讀取reflect.xls中的某些信息進(jìn)行處理后寫(xiě)入mini.xls文件中。 

            
#-*- coding: utf8 -*-
import xlrd
from pyExcelerator import * 
 
w = Workbook() 
ws = w.add_sheet('Sheet1') 

fname = "reflect.xls"
bk = xlrd.open_workbook(fname)
shxrange = range(bk.nsheets)
try:
 sh = bk.sheet_by_name("Sheet1")
except:
 print "no sheet in %s named Sheet1" % fname

nrows = sh.nrows
ncols = sh.ncols
print "nrows %d, ncols %d" % (nrows,ncols)
 
cell_value = sh.cell_value(1,1)
#print cell_value
 
row_list = []
mydata = []
for i in range(1,nrows):
 row_data = sh.row_values(i)
 pkgdatas = row_data[3].split(',')
 #pkgdatas.split(',')
 #獲取每個(gè)包的前兩個(gè)字段
 for pkgdata in pkgdatas:
  pkgdata = '.'.join((pkgdata.split('.'))[:2])
  mydata.append(pkgdata)
 #將列表排序
 mydata = list(set(mydata))
 print mydata
 #將列表轉(zhuǎn)化為字符串
 mydata = ','.join(mydata)
 #寫(xiě)入數(shù)據(jù)到每行的第一列
 ws.write(i,0,mydata)
 mydata = []
 row_list.append(row_data[3])
#print row_list

w.save('mini.xls')
          

4.現(xiàn)在我需要根據(jù)Excel文件中滿足特定要求的apk的md5值來(lái)從服務(wù)器獲取相應(yīng)的apk樣本,就需要這樣做 : 

            
#-*-coding:utf8-*-
import xlrd
import os
import shutil
 
fname = "./excelname.xls"
bk = xlrd.open_workbook(fname)
shxrange = range(bk.nsheets)
try:
 #打開(kāi)Sheet1工作表
 sh = bk.sheet_by_name("Sheet1")
except:
 print "no sheet in %s named Sheet1" % fname
#獲取行數(shù)
nrows = sh.nrows
#獲取列數(shù)
ncols = sh.ncols
#print "nrows %d, ncols %d" % (nrows,ncols)
#獲取第一行第一列數(shù)據(jù)
cell_value = sh.cell_value(1,1)
#print cell_value
 
row_list = []
#range(起始行,結(jié)束行)
for i in range(1,nrows):
 row_data = sh.row_values(i)
 if row_data[6] == "HXB":
  filename = row_data[3]+".apk"
  #print "%s %s %s" %(i,row_data[3],filename)
  filepath = r"./1/"+filename
  print "%s %s %s" %(i,row_data[3],filepath)
  if os.path.exists(filepath):
   shutil.copy(filepath, r"./myapk/")

          

補(bǔ)充一個(gè)使用xlwt3進(jìn)行Excel文件的寫(xiě)操作。

            
import xlwt3

if __name__ == '__main__':
	
	datas = [['a', 'b', 'c'], ['d', 'e', 'f'], ['g', 'h']]#二維數(shù)組
	file_path = 'D:\\test.xlsx'
	
	wb = xlwt3.Workbook()
	sheet = wb.add_sheet('test')#sheet的名稱為test
	
	#單元格的格式
	style = 'pattern: pattern solid, fore_colour yellow; '#背景顏色為黃色
	style += 'font: bold on; '#粗體字
	style += 'align: horz centre, vert center; '#居中
	header_style = xlwt3.easyxf(style)
	
	row_count = len(datas)
	col_count = len(datas[0])
	for row in range(0, row_count): 
		col_count = len(datas[row]) 
		for col in range(0, col_count):
			if row == 0:#設(shè)置表頭單元格的格式
				sheet.write(row, col, datas[row][col], header_style)
			else:
				sheet.write(row, col, datas[row][col])
	wb.save(file_path)
          

輸出的文件內(nèi)容如下圖:

Python讀寫(xiě)Excel文件的實(shí)例_第1張圖片

注:以上代碼在Python 3.x版本測(cè)試通過(guò)。

好了,python操作Excel就這么!些了,簡(jiǎn)單吧


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論