zoukankan      html  css  js  c++  java
  • Linux安装Python xlrd、xlwt、xlutils模块

    一、安装setuptools:

    可以先打开setuptools的python官网看看setuptools软件包如何安装:

    1
    > wget https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py > python ez_setup.py --user 

    也可以下载setuptools软件包后安装:

    (1)下载setuptools包

    1
    # wget http://pypi.python.org/packages/source/s/setuptools/setuptools-2.0.tar.gz 

    (2)解压setuptools包

    1
    #tar zxvf setuptools-2.0.tar.gz 

    (3)切换到当前文件夹

    1
    #cd setuptools-2.0  

    (4)编译setuptools

    1
    #python setup.py build  

    (5)开始执行setuptools安装

    1
    #python setup.py install

    参考:

    1
    from:http://www.jb51.net/article/101444.htm

     二、 安装xlrd、xlwt、xlutils

    xlrd:是python从excel读数据的第三方控件;
    xlwt:是python从excel写数据的第三方控件;
    xlutils:是python使用xlrd、xlwt的工具箱。若安装不成功,可能原因是需要安装setuptools。

    第一种方法()

    1
    2
    3
    4
    5
    [root@vm4 python]# pip  install xlrd
     
    [root@vm4 python]# pip  install xlwt
     
    [root@vm4 python]# pip  install xlutils

      

    第二种方法:(我用这个种方法)

    1、下载文件xlrd-0.9.3.tar.gz,xlwt-0.7.5.tar.gz,xlutils-1.7.1.tar.gz并上传至python

    2、解压安装xlrd

    1
    2
    3
    [root@vm4 python]# tar -zxvf xlrd-0.9.3.tar.gz
    [root@vm4 python]# cd xlrd-0.9.3
    [root@vm4 xlrd-0.9.3]# python setup.py install 

    3、解压安装xlwt

    1
    2
    3
    [root@vm4 python]# tar -zxvf xlwt-0.7.5.tar.gz
    [root@vm4 python]# cd xlwt-0.7.5
    [root@vm4 xlwt-0.7.5]# python setup.py install

    4、解压安装xlutils

    1
    2
    3
    [root@vm4 python]# tar -zxvf xlutils-1.7.1.tar.gz
    [root@vm4 python]# cd xlutils-1.7.1
    [root@vm4 xlutils-1.7.1]# python setup.py install 

    1.1 实战例子

    复制代码
    # -*- coding: utf-8 -*-
    __author__ = 'ShengLeQi'
    import xlwt
    import pymysql
    import  sys,os
    import datetime
    def mysql_m():  #mysql数据连接部分
        # 打开数据库连接
        db = pymysql.connect("10.0.0.101","sheng","123456","Sheng_DB" ,charset='utf8')
        # 使用cursor()方法获取操作游标
        cursor = db.cursor()
        # SQL 查询语句
        sql = "SELECT * FROM student "
        try:
            # 执行SQL语句
            cursor.execute(sql)
            # 获取所有记录列表
            results = cursor.fetchall()
            # print(results)
            # print(len(results[0]))
            return  results
        except:
            print("Error: unable to fetch data")
    
    def set_style(name,height,bold=False):  #字体设置
        """
        设置单元格样式
        :param name: 字体名字
        :param height: 字体大小
        :param bold: 是否加粗
        :return: 返回样式
        """
        style = xlwt.XFStyle()
        font = xlwt.Font()
        font.name = name
        font.bold = bold
        font.color_index = 4
        font.height = height
        style.font = font
        return style
    
    def write_excel():  #写入xls部分
        """
        写表格
        :return:
        """
        f = xlwt.Workbook()  # 创建工作簿
        sheet1 = f.add_sheet('students',cell_overwrite_ok=True) ##第二参数用于确认同一个cell单元是否可以重设值。
    
        row0 = ['id','性别','班级编号','姓名']
        # 生成第一行
        for i in range(len(row0)):
            sheet1.write(0,i,row0[i],set_style('宋体',200,True)) # 200对应的是10号字体,如果设置太小,可能看上去像空Excel,实际上是有内容的
        results=mysql_m()
        for count,row in  enumerate(results):
            for i in range(len(row)):
                sheet1.write(count+1,i,row[i],set_style('宋体',200,True))
        f.save('test1.xls')
        now_time = datetime.datetime.now()
        yes_time = now_time + datetime.timedelta(days=-1)
        yes_time = (yes_time.strftime('%Y%m%d'))
        if os.path.exists(yes_time) is not True:
            os.makedirs(yes_time)
        path=os.path.join(os.getcwd(),yes_time,'test_time.xls')
        f.save(path)
    
    if __name__ == '__main__':
        write_excel()
    复制代码
  • 相关阅读:
    1055. [HAOI2008]玩具取名【区间DP】
    BZOJ2435:[NOI2011]道路修建 (差分)
    1084. [SCOI2005]最大子矩阵【网格DP】
    1060. [ZJOI2007]时态同步【树形DP】
    1050. [HAOI2006]旅行【并查集+枚举】
    2463. [中山市选2009]谁能赢呢?【博弈论】
    luogu P1195 口袋的天空
    luogu P1162 填涂颜色
    luogu P1223 排队接水
    luogu P1331 海战
  • 原文地址:https://www.cnblogs.com/lzkalislw/p/15613068.html
Copyright © 2011-2022 走看看