python操作Excel文件

    xiaoxiao2022-07-07  205

    将接口请求参数放入Excel表格中 在请求时读取表格内容 做到数据的分离 有助于代码的维护 和优化 打开、并读取Excel文件内容的方法 首先用pip把对应的xlutils库 下载下来 然后 在当前工程目录下新建一个Excel文件 注意要将后缀改成xls

    然后在Sheet1工作区写入内容并保存

    1. import xlrd 2. import os 3. def base_dir(filename=None): 4. return os.path.join(os.path.dirname(__file__),filename) 5. work = xlrd.open_workbook(base_dir('data.xls')) 6. sheet= work.sheet_by_name('Sheet1') 7. print(sheet.nrows) 8. print(sheet.cell_value(1,1))

    代码说明:

    导入操作Excel需要的模块导入os文件路径模块定义函数返回当前目录打开Excel文件要读取的内容在文件的那个工作区 就把参数写成那个工作区的名称或者索引号(我读取的是Sheet1工作区的内容)打印共有几行内容打印单元格第二行第二列的内容(索引从0开始,所以写1,1)

    修改Excel文件文件的内容或添加Exce的内容 可以将执行的结果 写入文件 中方便统计 具体操作如下 ‘ 对Excel中的文件两个字进行修改 (这两个字在第3行第1列) 代码如下

    1. import xlrd 2. from xlutils.copy import copy 3. import os 4. def base_dir(filename=None): 5. return os.path.join(os.path.dirname(__file__),filename) 6. work = xlrd.open_workbook(base_dir('data.xls')) 7.iod= copy(work) 8.ws = old.get_sheet(0) 9. ws.write(3,1,'file') 10.iod.save(base_dir('data.xls'))

    代码说明:

    6行. 打开文件并赋值给work 7行 保存当前文件内容 8行 到要操作的sheet索引并赋给sheet 9行 修改内容所在的行和列和修改后的内容 10行. 调用之前的文件重新写入并生成新的文件

    内容修改完成了

    假如说我们连接数据库 但又不想把连接的信息暴露在外面 要怎么作? 我们可以把连接信息放在文件里面然后用索引的方式读取出来

    先在当前目录创建一个文件 存放连接信息 文件名:config.ini

    [mysql] IP = 127.0.0.1 PORT = 3306 USER = ROOT PASSWORD = 123456

    代码如下:

    import os import configparser def base_dir(filename = None): return os.path.join(os.path.dirname(__file__), filename) def getmysql(mysql='mysql'): list1 = [] config = configparser.ConfigParser() config.read(base_dir('config.ini')) host = config.get('mysql','host') port = config.get('mysql','port') user = config.get('mysql','user') password = config.get('mysql','password') db = config.get('mysql','db') charset = config.get('mysql','charset') list1.append(charset) list1.append(db) list1.append(host) list1.append(port) list1.append(user) list1.append(password) return list1 print(getmysql()[0])

    代码说明: 7行.创建一个空列表 备用 8行: 实例化configparser 9行:打开文件config .ini 10行:读取mysql标签下的host字段 并赋给变量host 11行:读取mysql标签下的port字段 并赋值给变量 port 12行.读取mysql标签下的user字段 并赋给变量user 13行.读取mysql标签下的password字段 并赋给变量password 14行.读取mysqll标签下的db字段 并赋给变量db 15行.读取mysql标签下的charset字段 并赋给变量charset 16–21行.将提取到的所有字段放入list1列表中 22行 返回list 23行 打印列表中第一个索引的值

    print(-------------------------分割线-----------------------------)

    读取csv文件内容 python自带csv的标准库 直接导入 就可以使用 在当前文件夹 新建一个csv文件 名称为excel.csv 文件内容: 以列表格式读取打印 代码如下:

    import csv def readCsvList(): with open('excel.csv','r') as f: reader =csv.reader(f) next(reader) for item in reader: print(item) readCsvList()

    代码说明: 3行:只读的方式打开文件 并取别名为f 4行:调用csv的迭代器 赋给reader 5行:用next方法 过滤掉 文件中的key 6行:遍历文件中的value值 7行,打印输出

    以字典形式输出

    代码如下:

    def readCsvList(): with open('excel.csv','r') as f: reader =csv.DictReader(f) for item in reader: print(dict(item)) readCsvList()

    代码说明: 3行:DictReader方法转成字典 4行:遍历字典 5行打印输出

    最新回复(0)