python pands实现execl转csv 并修改csv指定列的方法

yipeiwu_com6年前Python基础

如下所示:

# -*- coding: utf-8 -*-
import os 
import pandas as pd
import numpy as np
#from os import sys

def appendStr(strs):
 return "BOQ" + strs

def addBOQ(dirs, csv_file):
 data = pd.read_csv(os.path.join(dirs, csv_file), encoding="gbk")
 data = data[data[u"BOQ条码"] != 'None']
 data[u"BOQ条码"] = data[u"BOQ条码"].astype(np.str)
 data[u"BOQ条码"] = data[u"BOQ条码"].apply(appendStr, 1)
 data.to_csv(os.path.join(dirs, csv_file), index=False, encoding="gbk")

def execl2csvbypandas(dirs, excel_file, addStr):
 newdir = os.path.join(dirs, "csvdir")
 if not os.path.isdir(newdir):
  os.makedirs(newdir)
 filename = os.path.splitext(excel_file)
 data_xls = pd.read_excel(os.path.join(dirs, excel_file), 'Sheet1', index_col=0)
 csvname = os.path.join(newdir, filename[0].join(['sheet1', '.csv']))
 data_xls.to_csv(csvname, encoding='gbk')
 if True == addStr:
  addBOQ(newdir, csvname)

def procExeclFiles(arg, dirs, files):
 print arg
 for f in files:
  file_path = os.path.join(dirs, f)
  if os.path.isfile(file_path):
   print f
   execl2csvbypandas(dirs, f, arg)
 print "end...."

 
if __name__ == "__main__":
 #遍历目录,并把改目录下的execl转为csv,然后存入该目录下csvdir目录下,传参数True时,是给csv中BOQ条码列添加BOQ字符串,一般为False
 os.path.walk(r"C:\Users\Desktop\test", procExeclFiles, (True))

以上这篇python pands实现execl转csv 并修改csv指定列的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python标记语句块使用方法总结

python标记语句块使用方法总结

python标记语句块使用方法,python语言和其它的编程语言有着显著的区别,那就是python对格式的要求非常苛刻,好处就是书写上简易命令,写错了就会自动报错,但实际上标记语块非常容...

python3中替换python2中cmp函数的实现

python3中替换python2中cmp函数的实现

python 3.4.3 的版本中已经没有cmp函数,被operator模块代替,在交互模式下使用时,需要导入模块。 在没有导入模块情况下,会出现 提示找不到cmp函数了,那么在p...

使用pycharm设置控制台不换行的操作方法

使用pycharm设置控制台不换行的操作方法

pandas进行打印,控制台的显示默认是换行的在pycharm中的控制台也没有办法设置 可加入如下代码打印,结果不换行,看着数据更加直观 import pandas as pd i...

Python的Flask框架与数据库连接的教程

Python的Flask框架与数据库连接的教程

 命令行方式运行Python脚本 在这个章节中,我们将写一些简单的数据库管理脚本。在此之前让我们来复习一下如何通过命令行方式执行Python脚本. 如果Linux 或者OS X...

Python实现的对一个数进行因式分解操作示例

本文实例讲述了Python实现的对一个数进行因式分解操作。分享给大家供大家参考,具体如下: 在数学中,我们可能会对一个数进行因式分解,如何用Python来实现呢?以下是某位大佬写的算法,...