python批量转csv为xlsx

代码

#导入模块
import pandas as pd
import glob

#获取所有csv文件路径
csv_files = glob.glob(r'C:\Users\grr\Desktop\O3各指标之间的关系建立\站点_20150101-20151231\*.csv')

#循环读取csv文件并转换为xlsx文件
for file in csv_files:
    df = pd.read_csv(file)
    xlsx_file = file.split('.csv')[0] + '.xlsx'
    df.to_excel(xlsx_file, index = False)

思路

  • 首先,使用glob模块获取目标工作目录下所有的csv文件路径;
  • 然后,使用pandas库的read_csv函数读取CSV文件内容,并将其转换为pandas DataFrame对象;
  • 最后,使用to_excel函数将DataFrame对象保存为XLSX文件。

说明

1. glob是Python语言的一个程序扩展模块/库,用于查找文件目录和文件,并将查找结果返回到一个列表中。

  • glob的常用表达方法有glob.glob()和glob.iglob()两种,可与find的功能进行类比。
  • glob支持的通配符有 *、?、[] 三种,其中 *代表0个或多个字符,?代表1个字符,[]匹配指定范围内的字符(如[0-9]匹配数字)

2. split()函数

  • 功能为拆分字符串。通过指定分隔符对字符串进行切片,并返回分割后的字符串列表
  • 语法为str.split(str = '', num = string.count(str))[n]
  • str:表示分隔符,默认为空格,但不能为空。若字符串中没有分隔符,则把整个字符串作为列表的一个元素
  • num:表示分隔次数。如果存在参数num,则仅分隔成num+1个子字符串,并且每个子字符串可以被赋予新的变量
  • [n]:表示选取第n个分片
  • 注意:当使用空格作为分隔符时,对于中间为空的项会自动忽略

你可能感兴趣的:(python,pandas,开发语言)