分享Python简短代码,实现TXT转换MySQL文件。

环境准备

我这里使用的是:

  • python 3.10
  • 第三方包和对应版本:

pandas==1.3.5
PyMySQL==1.0.2
SQLAlchemy==1.4.30
PySimpleGUI==4.56.0

方便项目环境管理,我一般使用pipenv创建管理虚拟环境,如果你也感兴趣,可以看下我之前写的pipenv基本使用教程

pipenv install   # 创建虚拟环境
pipenv shell    # 进入虚拟环境

pip install pandas PyMySQL SQLAlchemy PySimpleGUI  # 虚拟环境下安装需要的包

exit   # 退出虚拟环境,直接关闭cmd也可

2.1 数据读取

查看示例数据发现有2种分隔符,空格和制表符\t,所以我们读取数据的时候也需要指定两种分隔符,另外这个文件没有表头,所以方便数据处理和存储,最好加上表头,和数据库字段名一致。

如下代码:

import pandas as pd
'''
read_csv
参数解释:
1、要读取文件路径
2、sep
 指定分隔符,读取数据,使用|可以添加多种分隔符
3、header=None
 没有表头 默认第一行为表头
4、engine
 设置程序引擎
'''

data = pd.read_csv('./resources/ctd2020-09-27.txt', sep=' |\t',header=None, engine='python')
data

不难看出,这样直接读取会有两列nan,这是因为还有两个空格分隔的,没关系,我们删除下整列都为nan的列即可,数据读取无误后,我们在添加上表头,实现代码如下:

# 读取文件
def get_txt_data(filepath):
    columns = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N']
    data = pd.read_csv(filepath, sep=' |\t',header=None,engine='python')
    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

PythonYL学习进阶

朋友,一起学习,请多多支持!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值