Python入门:第一个py项目

需求:写一个Python文件批量将xlsx生成csv文件

1, 到python 官网下载安装包:https://www.python.org/getit/

2,配置环境变量,类似:Python.exe文件路径C:\Python27放到path中,pip.exe文件路径C:\Python27\Scripts放到path中

3,使用pycharm编译器创建py文件;

# -*- coding:utf-8 -*-
import codecs
import csv
import time
import sys

reload(sys)
sys.setdefaultencoding('utf-8')
import xlrd

# -*- coding:utf-8 -*-

import os
import pandas
import time

def gci(filepath):
    print(filepath)
    files = os.listdir(filepath)
    for f1 in files:
        fi_d = os.path.join(filepath,f1).encode('gbk')
        if os.path.isdir(fi_d):
            gci(fi_d)
        else:
            sufix = os.path.splitext(f1)[1]
            print(sufix)
            if sufix =='.xlsx':
                fi_d1 = os.path.join(filepath, f1)
                xlsx_to_csv_pd(fi_d1)

def xlsx_to_csv_pd(file):
    dirname = os.path.dirname(file)+"\\csv\\";
    basename = os.path.basename(file)
    realpath = dirname + basename
    if not os.path.exists(dirname):
        os.makedirs(dirname)
    data_xlsx=pandas.read_excel(file,index_col=0)
    data_xlsx.to_csv(realpath[:-5]+".csv",encoding='gbk')
gci(os.getcwd())

其中涉及到import module;如果pycharm不能自动引入,就需要收到引入;

File->setting->Project Interpreter  设置python版本,在+号处搜索引入module

4,将Python文件打包生成exe

py打包需要得执行文件是PyInstaller.exe;

需要先使用pip install Pyinstaller 先进行安装;

pycharm中配置生成打包工具,便于直接打包exe;

file->setting->Tools->External Tools 处点击+号进行配置tool

最终出现:

配置成功;

5.点击 Pyinstall EXE 生成exe文件;

6,执行exe

执行过程中报错:import error :no pandas module???

到处搜索问题,在同事得帮助下找到:

原因是pandas是c源码,而pyInstaller找不到pandas的代码,就算你是-p /lib/site-packages还是不行。
解决方法:
在./Lib/site-packages/PyInstaller/hooks下,新建一个文件名为hook-pandas.py 

。写入以下内容并保存。
hiddenimports = ['pandas._libs.tslibs.timedeltas',
'pandas._libs.tslibs.nattype',
'pandas._libs.tslibs.np_datetime',
'pandas._libs.skiplist']

加入:重新打包,最终成功...

不容易啊!

猜你喜欢

转载自blog.csdn.net/waterflying2015/article/details/81209083