【python练习】openpyxl操作excel练习

'''项目2:将目录下的多个商品信息文件写入同一个excel文件
任务1:在当前目录的项目1文件夹中创建一个excel文件
任务2:修改excel工作表名为:汇总信息
任务3:文件表头为:商品名: 价格:
任务4:将txt文本内容按照表头复制到excel中
'''
import openpyxl
import os
from openpyxl.styles import Font, PatternFill

'''创建excel'''
path = os.path.join(os.getcwd(), '项目二', '汇总.xlsx')
wb = openpyxl.Workbook()
ws = wb.active

"操作表头"
ws.title = '汇总信息'
ws['A1'] = '商品信息'
ws['A1'].font = Font('华文细黑', size=12, bold=True, color='BF3EFF')
ws['A1'].fill = PatternFill('solid', fgColor='ff9933')  #  RGB填充
ws['B1'] = '价格'
ws['B1'].font = Font('华文细黑', size=12, bold=True, color='BF3EFF')
ws['B1'].fill = PatternFill('solid', fgColor='ff9933')  #  RGB填充

result = []  # 存储处理后的信息
dir_name = os.path.join(os.getcwd(), '项目二')
for file in os.listdir(dir_name):  # 遍历目录下的文件
    file_name = os.path.join(os.getcwd(), '项目二', file)  #C:\Users\z0\PycharmProjects\OJ\simple\项目二\1.txt
    with open(file_name, mode='r', encoding='utf-8') as f:
        content = f.readlines()  #  将txt内容写入列表
    for i in range(0, len(content), 4):  # 对内容进行处理,提取关键信息,分析提取到的列表,每4个元素为一个商品信息。
        result.append(content[i+2].strip('\n'))  # 提取商品信息
        result.append(content[i][4:].strip('\n'))  # 提取价格
        print(result) # ['高梵 【热销爆款】 魔力修身羽绒背心女短款显瘦保暖羽绒马甲', '86']

    "将提取的内容写入excel中"
    end_num ="B"+ str(len(result)//2 +1) #获取区域的最后位置 B21
    '''在区域内一次写入内容'''
    i = 0  #列表索引
    for line in ws['A2':end_num]:
        for cell in line:  # cell 为单元格对象 <Cell '新数据表'.B1>
            ws[cell.coordinate] = result[i]  # cell.coordinate属性获取单元格的行列信息
            i += 1
"保存excel文件"
wb.save(path)   #生成excel文件

  

posted @ 2021-11-17 10:11  七彩蜗牛  阅读(217)  评论(0编辑  收藏  举报