python读取常用文件

读取xlsx文件

from openpyxl import load_workbook

class ExcelOperation(object):
    def __init__(self, file):
        self.wb = load_workbook(file)

    def get_table_values(self, sheet_name):
        ws = self.wb[sheet_name]
        columns = ws.max_column
        rows = ws.max_row
        row_data = []
        data = []
        row_value = []
        for i in range(2, rows + 1):
            for j in range(1, columns + 1):
                cell_value = ws.cell(row=i, column=j).value
                row_data.append(cell_value)
                if j == columns:
                    row_value = row_data
                    row_data = []
                    break
            # 去除sheet表里的空行
            if len(set(row_value)) > 1:
                data.append(row_value)
        return data

    def get_all(self):
        """
        以字典表名的方法保存文件中各个表数据
        """
        info = {key: list() for key in self.wb.sheetnames}
        for k in info.keys():
            info[k] = self.get_table_values(k)
        return info
  
  if __name__ == '__main__':

    a = ExcelOperation('/root/image.xlsx').get_all()["images"]
    print(*a)

读取yaml文件

#!/usr/bin/python3
import yaml


def read_config(config_file_path, key):

    with open(config_file_path, "r", encoding="utf-8") as file:
        config_message = file.read()
        message_dict = yaml.load(config_message, Loader=yaml.FullLoader)
        data_dict = message_dict[key]
    return data_dict

读取json文件

#!/usr/bin/python3
import json
import os

re_path = '/root'
# 写入
def dump_file(info, file_name=''):
    file_name = os.path.join(re_path, file_name) + ".json"
    with open(file_name, "w") as f:
        json.dump(info, f)

# 读取
def load_file(file_name):
    file_name = os.path.join(re_path, file_name) + ".json"
    print(file_name)
    with open(file_name, "r") as f:
        info = json.load(f)
    return info

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值