pandas read_csv、read_excel 以文本形式读取零开头的纯数字字符
2023-03-07 09:44:02 时间
在转换高德地图城市编码的过程中,有很多城市编码开头是 0,当我转成 json 的时候,出来的结果是直接吧 数字前面的 0 去掉了,不符合预期。所以此时需要对列转类型。
import os
import time
import requests
import pandas as pd
DESKTOP = os.path.join(os.path.expanduser("~"), "Desktop") # 桌面
class FormToMany:
def __init__(self, file_path, file_save_path=DESKTOP, api_url=None):
self.file_path = file_path
self.file_save_path = file_save_path
self.api_url = api_url
def to_json(self):
"""
转变成 json 对象
:return:
"""
if self.file_path.endswith(".csv"):
# citycode,列名称
data = pd.read_csv(self.file_path, encoding='gb2312', converters={'citycode': str})
else:
# citycode,列名称
data = pd.read_excel(self.file_path, encoding='gb2312', converters={'citycode': str})
# force_ascii,是否使用 ASCII 码
data = data.to_json(orient="index", force_ascii=False)
return data
def to_json_file(self):
"""
保存到 json 文件
:return:
"""
current_date = time.strftime("%Y%m%d_%H%M%S")
if self.file_path.endswith(".csv"):
# csv
file_save_name = "csv_%s.json" % current_date
else:
# xlxs
file_save_name = "xlxs_%s.json" % current_date
try:
with open(os.path.join(self.file_save_path, file_save_name), "w") as f:
f.write(self.to_json())
print("提示:数据导出成功 %s" % os.path.join(self.file_save_path, file_save_name))
return True
except Exception as e:
print(str(e))
return False
def to_json_post(self):
"""
上传 json 对象
:return:
"""
if self.file_path.endswith(".csv"):
kind = "csv"
else:
kind = "excel"
body = {
"type": kind,
"data": self.to_json()
}
try:
req = requests.post(self.api_url, data=body, timeout=180)
except Exception as e:
print(str(e))
return False
else:
if req.status_code == 200:
print("数据上传成功")
return True
else:
print("数据上传结束")
return False
if __name__ == "__main__":
pass
相关文章
- 数据孤岛是业务效率的无声杀手
- 2023展望:新的一年将给大数据分析领域带来什么?
- 阿里云ADB基于Hudi构建Lakehouse的实践
- 大数据在医疗保健领域的使用案例
- 微软增加说明:KB5021751 更新扫描已经 / 即将过时 Office 过程中不会触碰用户隐私
- 2022 Gartner全球云数据库管理系统魔力象限发布 腾讯云数据库入选
- 场景化、重实操,分享一个实时数仓实践案例
- Arctic的湖仓一体践行之路
- 分布式计算MapReduce究竟是怎么一回事?
- 淘系数据模型治理优秀实践
- 大数据分析对医疗保健的影响
- 当我们说大数据Hadoop,究竟在说什么?
- 2022年及以后大数据的五个发展趋势
- 网易严选离线数仓治理实践
- 2023 年数据治理趋势
- 一份“靠谱”的年度经营计划,你学会了吗?
- 漫谈对大数据的思考
- 测试一下,读懂数据的能力,你有吗?
- 用艺术的眼光探索数据之美
- 聊聊数据分析成果如何落地