#python 对excel进行读写 *** 作

#python 对excel进行读写 *** 作,第1张

python 对excel进行读写 *** 作
import xlrd  # 引入库
import xlwt
def contrast():
    wb = xlrd.open_workbook('D:/desk/dui.xls')  # 打开文件并返回一个工作蒲对象
    sheet_num = wb.nsheets  # 获取excel里面的sheet的数量
    print(sheet_num)
    sheet_names = wb.sheet_names()  # 获取到Excel里面所有的sheet的名称列表,即使没有sheet也能用。
    print(sheet_names)
    sheet = wb.sheet_by_index(0)  # 通过索引的方式获取到某一个sheet,现在是获取的第一个sheet页,也可以通过sheet的名称进行获取,sheet_by_name('sheet名称')
    rows = sheet.nrows  # 获取sheet页的行数,一共有几行
    columns = sheet.ncols  # 获取sheet页的列数,一共有几列
    print(rows,columns)
    # 获取第一行的数据
    row_data = sheet.row_values(0)  # 返回给定的行数的单元格数据进行切片
    print(row_data)
    # 获取第二列的数据
    col_data = sheet.col_values(1)
    print(col_data)
    # 获取单元格的数据
    one_data = sheet.cell(2, 1)  # 同样是通过索引的方式,cell(0,1)获取到的是第一行第二列的单元格数据
    cell_value = one_data.value  # 获取单元格的值
    cell_type = one_data.ctype  # 获取单元格的类型,在xlrd中,单元格的数据类型有6种,
    print(cell_value)
    print(cell_type)
    MY_EXCEL = xlwt.Workbook(encoding='utf-8')  # 创建MY_EXCEL对象
    excelsheet = MY_EXCEL.add_sheet('sheet1')  # 创建工作表(创建excel里面的工作表)
    for i in range(0,rows):
        for j in range(1,columns):
            value=sheet.cell_value(i,j)
            if value != 0:
                x=int(value-1)
                va=int(i+1)
                excelsheet.write(x, 0, va)  # 在第x行第0列写入va
                print(i,j,value)
            # else:
            #     print("zhe %d ,%d"%(i,j))
    # 0 - -  空(empty)
    # 1 - -  字符串(string)
    # 2 - -  数字(number)
    # 3 - -  date(日期)
    # 4 - -  boolean(布尔值)
    # 5 - -  error(错误)
    MY_EXCEL.save('name.xls')  # 保存在name.xls中

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/langs/714755.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-04-24
下一篇2022-04-24

发表评论

登录后才能评论

评论列表(0条)

    保存