栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

学习python的第9天距离大师100天还差91(昨天的理解了这个就很容易)

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

学习python的第9天距离大师100天还差91(昨天的理解了这个就很容易)

Excel的写操作

‘’’
微软的Excel
后缀名:.xls、.xlsx
.xls:excel2007以前的文件后缀名。最多容纳256列16000+行数据 —>xlwt,xlrd

.xlsx:excel2007开始文件使用的后缀名。最多容纳16000多列1048567行数据
excel 2007开始兼容xls、xlsx后缀名 —>openpyxl
‘’’

python能够操作excel的模块:

openpyxl、xlsxwrite、xlwt、pandas、xlrd、win32com、xlutils等 安装第三方模块 openpyxl

如何安装虚拟模块到虚拟环境:

1.激活虚拟环境

使用 ./venv/scripts/activate 在系统里面输入进行环境激活

报错:因为微软禁用了终端执行脚本的功能。

使用: Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser解除禁用

再次执行 ./venv/scripts/activate

2.venv -->虚拟环境已经激活

查看已安装的模块:pip list

工作薄:一个excel文件就是一个工作薄。
工作表:一个工作薄的多张表格。
单元格:存储信息的方格

import openpyxl           #导入第三方模块
1.新建一个excel文件
file = openpyxl.Workbook()  

如果文件存在:openpyxl.load_workbook(文件路径和文件名)

2.操作工作表

创建工作表对象:create_sheet(表名,下标)

如果直接在工作薄追加工作表,下标参数可以不写

file.create_sheet('学生', 0)         #指定下标为0的file工作薄的位置增加一个表名为学生的工作表
file.create_sheet('学生成绩')         #  在后者直接追加名为学生成绩的工作表

查看工作薄中已经存在的工作表:sheetname

print(file.sheetnames)       # ['学生', 'Sheet', '学生成绩']

移除工作表:remove(表) -->表:工作薄对象[工作表]

file.remove(file['Sheet'])

从学生成绩工作表插入信息

方法一:使用cell(行号,列号)定位单元格

cell(行号,列号) ->定位单元格用的

value - ->获取单元格内容

print(file['学生'].cell(1, 1).value)     #   None 没添加东西
file['学生'].cell(1, 1).value ='姓名'
print(file['学生'].cell(1, 1).value)        
file['学生'].cell(1, 2).value = '性别'

方法二:使用[列号行号]定位单元格

file['学生成绩']['AAA1'] ='姓名'
print(file['学生成绩']['AAA1'].value)

保存文件

file.save('./学生成绩.xlsx')    #文件名  不是工作薄的名字
os模块
import os
file_list =os.listdir('../作业')    #os.listdir(p)    p:为相对文件路径
print(file_list,type(file_list))      # os.listdir 找寻相对路径中文件夹的中的所有文件
for i in file_list:                  
    if i[-4:] == '.csv':           # 目的是为了找寻某文件夹中后缀名为.csv的文件 进行输出
        print(i)
csv文件数据写入xlsx
import os           # 只有一个数据就不用 因为是文件夹多个数据  使用os可以方便导入多个文件
import csv     
import openpyxl

新建xlsx后缀名

file = openpyxl.Workbook()

新建工作表

file.create_sheet('成都链家二手房数据汇总')   

‘’‘’

上诉只是为了新文件的创建做开端

‘’‘

file_list = os.listdir('./作业')     #读取'作业'文件夹中的所有子文件
count = 0           # 作用进行行号的递增
for i in file_list:
    if i[-4:] == '.csv' ':    
        f = open(f'./作业/{i}', 'r', encoding='utf-8')
        read_data = csv.reader(f)    
        for j in read_data:  # 读出来是列表
            count += 1
            for x in range(0, len(j)):  # 根据每一条数据长度判断写N列
                file['成都链家二手房数据汇总'].cell(count, x+1).value = j[x]
        f.close()

file.save('./成都链家二手房.xlsx')
print('打印成功')
读excel文件
import openpyxl

max_row

max_column

file = openpyxl.load_workbook('./成都链家二手房.xlsx')    #加载xlsx
ws = file['成都链家二手房数据汇总']      # 工作薄中找工作表

获取max_row: 获取xlsx文件中最大行数

rows = ws.max_row

max_column:获取xlsx文件中最大列数

col = ws.max_columl
for i in range(1, rows + 1):  # 行
    for j in range(1, col + 1):  # 列
        print(ws.cell(i, j).value)
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1002342.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号