ホームページ > ウェブフロントエンド > jsチュートリアル > PythonはExcelを操作してデータを読み書きします

PythonはExcelを操作してデータを読み書きします

php中世界最好的语言
リリース: 2018-04-09 17:05:11
オリジナル
4699 人が閲覧しました

这次给大家带来python操作excel读写数据,python操作excel读写数据的注意事项有哪些,下面就是实战案例,一起来看一下。

本文实例为大家分享了python操作EXCEL的实例源码,供大家参考,具体内容如下

读EXCEL的操作:把excel的数据存储为字典类型

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

#coding=utf8 

  

#导入读excel的操作库 

import xlrd 

class GenExceptData(object): 

  def init(self): 

    try

      self.dataDic={} 

      #打开工作薄 

      self.wkbook= xlrd.open_workbook("Requirement.xls"

      #获取工作表“requirement” 

      self.dataSheet=self.wkbook.sheet_by_name("requirement"

      #把数据按 按照相应格式写入excel表中 

      self.readDataToDicl() 

      #保存文件 

    except Exception,e: 

      print "Read Excel error:",e 

   

  def readDataToDicl(self): 

    try

      nrows = self.dataSheet.nrows 

      ncols = self.dataSheet.ncols 

        

      print ncols ,nrows 

      try

        for rowNum in range(1,nrows):     

              #把数据的当前行的元素与上一行元素作比较 

              #如果不相等执行if语句 

              try

                  

                singleJson={} 

                propertyName=self.dataSheet.cell(rowNum,3).value 

                propertyValue=self.dataSheet.cell(rowNum,4).value 

                              

                if self.dataSheet.cell(rowNum,0).value and self.dataSheet.cell(rowNum,2).value: 

                  mdEvent=self.dataSheet.cell(rowNum,0).value 

                  singleJson["serviceId"]=self.dataSheet.cell(rowNum,2).value 

                singleJson[propertyName]=propertyValue                

                print singleJson 

                self.dataDic[mdEvent]=singleJson 

                singleJson.clear() 

                  

                  

              except Exception,e: 

                print "Get Data Error:",e 

      except Exception,e: 

        print "Reading Data Error:",e 

    except Exception,e: 

      print "Reading Data TO Dic Error:",e 

  

    

           

      

def test(): 

  GenExceptData() 

    

if name=="main"

  test()

ログイン後にコピー

写EXCEL的操作:把csv文件的数据按照需求写入到excel文件中

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

#coding=utf8 

  

from readCSV import readCSV 

import xlwt 

  

class GenTestCase(): 

  def init(self,path="E:\\PythonDemo\\OperExcel\\Demo.csv"): 

    self.dataInfor=readCSV(path) 

    #创建工作薄 

    self.wkbook=xlwt.Workbook() 

    #创建表:“埋点需求” 

    self.dataSheet=self.wkbook.add_sheet("shellt"

    self.creatHead() 

      

  def creatHead(self): 

    firstLine=[] 

    #创建表头 

    for index in range(len(firstLine)): 

      self.dataSheet.write(0,index,firstLine[index]) 

        

    dataBody=self.dataInfor.buffer 

    print dataBody.len() 

    currentrow=1 

    for rowNum in range(1,len(dataBody)): 

      for index in range(len(dataBody[rowNum])): 

        if rowNum>1: 

          if dataBody[rowNum-1][0]!=dataBody[rowNum][0] : 

            print currentrow,rowNum 

            if currentrow==1: 

              for cols in range(3): 

                cellValue=dataBody[currentrow][cols] 

                cellValue=cellValue.decode("gbk"

                data=u"%s" %(cellValue) 

                self.dataSheet.write_merge(currentrow,rowNum-1,cols,cols,data) 

                  

              for cols in range(6,13): 

                cellValue=dataBody[currentrow][cols] 

                cellValue=cellValue.decode("gbk"

                data=u"%s" %(cellValue) 

                self.dataSheet.write_merge(currentrow,rowNum-1,cols,cols,data)    

            else:   

              for cols in range(3): 

                cellValue=dataBody[currentrow][cols] 

                cellValue=cellValue.decode("gbk"

                data=u"%s" %(cellValue) 

                self.dataSheet.write_merge(currentrow-1,rowNum-1,cols,cols,data) 

              for cols in range(6,12): 

                cellValue=dataBody[currentrow][cols] 

                cellValue=cellValue.decode("gbk"

                data=u"%s" %(cellValue) 

                self.dataSheet.write_merge(currentrow-1,rowNum-1,cols,cols,data)                       

            currentrow=rowNum+1              

          break 

        

      for cols in range(3,6):        

        cellValue=dataBody[rowNum][cols] 

        cellValue=cellValue.decode("gbk"

        data=u"%s" %(cellValue) 

        self.dataSheet.write(rowNum,cols,data) 

                  

    self.wkbook.save(r'reqq.xlsx'

    

           

      

def test(): 

  GenTestCase() 

    

if name=="main"

  test()

ログイン後にコピー

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

python使用unittest测试接口步奏详解

Python字典的清单如何使用

以上がPythonはExcelを操作してデータを読み書きしますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート