1.(python数模)单函数读取常用文件

Python单函数读取常用文件

代码如下:

import pandas as pd


# 读取数据文件
def readDataFile(readPath):  # readPath: 数据文件的地址和文件名
    try:
        if (readPath[-4:] == ".csv"):
            dfFile = pd.read_csv(readPath, header=0, sep=",")  # 间隔符为逗号,首行为标题行
            # dfFile = pd.read_csv(filePath, header=None, sep=",")  # sep: 间隔符,无标题行
        elif (readPath[-4:] == ".xls") or (readPath[-5:] == ".xlsx"):  # sheet_name 默认为 0
            dfFile = pd.read_excel(readPath, header=0)  # 首行为标题行
            # dfFile = pd.read_excel(filePath, header=None)  # 无标题行
        elif (readPath[-4:] == ".dat"):  # sep: 间隔符,header:首行是否为标题行
            dfFile = pd.read_table(readPath, sep=" ", header=0)  # 间隔符为空格,首行为标题行
            # dfFile = pd.read_table(filePath,sep=",",header=None) # 间隔符为逗号,无标题行
        else:
            print("不支持的文件格式。")
    except Exception as e:
        print("读取数据文件失败:{}".format(str(e)))
        return
    return dfFile


if __name__ == '__main__':
    readPath = "C:/Users/lenovo/Desktop/lut.xls"  # 数据文件的地址和文件名
    dfFile = readDataFile(readPath)  # 调用读取文件子程序

    print(type(dfFile))  # 查看 dfFile 数据类型
    print(dfFile.shape)  # 查看 dfFile 形状(行数,列数)
    print(dfFile.head())  # 显示 dfFile 前 5 行数据


代码讲解

1、readPath[-4:]是对字符串切片,选取了倒数4位,也就是.以及.后面的文件格式。

2、read_csv是pd下读取.csv格式文件的函数。主要包括三个属性(路径,header,sep),路径是读取文件存放的路径,

3、header=0的含义,下图为源文件,
1.(python数模)单函数读取常用文件_第1张图片
当设置header=0时表示首行为标题行,我们打印读取结果的前五行数据会发现自动读取了标题
1.(python数模)单函数读取常用文件_第2张图片
当设置header=1时,将第一行数据行作为读取数据的标题行,因此整体数据会少了一行,从500变为499
1.(python数模)单函数读取常用文件_第3张图片
当header不设置时,默认第0行为标题行
1.(python数模)单函数读取常用文件_第4张图片
当设置为header=None时,会认为原有数据没有标题行,并自动生成一个0开始的标题行。1.(python数模)单函数读取常用文件_第5张图片

4、try 和except是捕获任何异常,并在发生异常时打印出错误信息。这样做是为了帮助调试和排除问题。你的代码在捕获异常后使用print函数将错误信息输出到控制台。这样,如果打开数据文件时出现任何问题,你都可以看到错误信息以便进行分析和修复。

5、return dfFile 表示该函数返回一个dataframe对象,变量名为dfFile,下面就可以对dtFile进行操作了

6、type(dfFile)能够查看dtFile的类型,dfFile.shape可以查看dtFile的行列数,dfFile.head()可以查看dtFile的前5行

你可能感兴趣的:(python,数学建模,python,开发语言)