当前位置: 首页 > wzjs >正文

知乎 php网站开发书籍seo外包上海

知乎 php网站开发书籍,seo外包上海,制作网站用什么语言,手机网站制作服务🤟致敬读者 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉 📘博主相关 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息 文章目录 Python读取Excel表数据转为JSON格式文件&…

🤟致敬读者

  • 🟩感谢阅读🟦笑口常开🟪生日快乐⬛早点睡觉

📘博主相关

  • 🟧博主信息🟨博客首页🟫专栏推荐🟥活动信息

文章目录

  • Python读取Excel表数据转为JSON格式文件(详细优化版)
    • 1. 精简代码
    • 2. 详细优化部分
      • 2.1 下载pandas
      • 2.2 读取表格文件(可指定sheet页)
      • 2.3 库日期处理
      • 2.4 布尔值转换
      • 2.5 空值Na的处理
      • 2.6 列名替换
    • 3. 详细优化后的完整代码


📃文章前言

  • 🔷文章均为学习工作中整理的笔记。
  • 🔶如有错误请指正,共同学习进步。

Python读取Excel表数据转为JSON格式文件(详细优化版)

使用pandas库读取Excel表

1. 精简代码

可直接食用

# 步骤 1:引入pandas库
import pandas as pd# 步骤 2: 读取Excel文件
file_path = 'path_to_your_excel_file.xlsx'  # 替换为你的Excel文件路径
df = pd.read_excel(file_path)# 步骤 3: 将DataFrame转换为JSON格式
# orient参数可以控制JSON的输出格式,例如 'records', 'index', 'columns', 'values', 'split' 等。
# 这里使用'records'格式,它会将每一行数据作为一个对象。orient='records'确保JSON输出为记录列表。
json_data = df.to_dict('records')# 步骤 4: 保存JSON文件
output_file_path = 'output.json'  # 指定输出JSON文件的路径和名称
with open(output_file_path, 'w', encoding='utf-8') as f:f.write(json_data)print("Excel数据已成功转换为JSON并保存到文件。")

2. 详细优化部分

该部分以上面精简代码为基础进行优化改造

2.1 下载pandas

使用pip命令下载pandas库

pip install pandas openpyxl

2.2 读取表格文件(可指定sheet页)

读取excel文件,可加参数sheet_name="sheet名称"来指定Sheet页,如果不指定,默认第一个sheet页
如想要读取的名称为Sheet2

df = pd.read_excel(file_path, sheet_name='Sheet2')

2.3 库日期处理

由于表格中日期转换为json后变成了一串数字,如何解决这个问题,可使用to_datetime函数

# 假设日期列名为'Date',且数据类型为整数(Excel序列号)
df['Date'] = pd.to_datetime(df['Date'], origin='unix', unit='D')  # 将Excel序列号转换为datetime对象
df['Date'] = df['Date'].dt.strftime('%Y-%m-%d')  # 将datetime对象转换为字符串格式'年-月-日'

2.4 布尔值转换

表格中的true和false转换时不会做处理,单如果json后续要导入到mysql表中,mysql表识别true和false会导入失败,只能识别0和1
可以使用以下代码将true和false转为1和0

# 修改表中的Boolean值,满足表中要求的0-1,而不是false true,不然导入报错
df['是否加装急停开关'] = df['是否加装急停开关'].map({True: 1, False: 0})

2.5 空值Na的处理

如果出现了空值,可使用fillna函数替换,如下

# 将Na替换为空字符
df = df.fillna('')

2.6 列名替换

如果想修改读取到的列名称,可使用以下代码将列名修改值
如excel表中列名是中文,为了更方便导入mysql表,这里将中文列名修改为对应的表字段(非表中字段,而是小驼峰)


column_map ={'任务单编号': 'taskTicketId','工号': 'employeeId'}print(df.columns)
col_names = df.columns.to_list()
col_names = [column_map[s] for s in col_names]
print(col_names)
df.columns = col_names

3. 详细优化后的完整代码

完整代码如下

# 步骤 1:引入pandas库
import pandas as pd# 步骤 2: 读取Excel文件
# file_path = 'path_to_your_excel_file.xlsx'  # 替换为你的Excel文件路径
file_path = '车辆改造单数据库.xlsm'  # 替换为你的Excel文件路径
df = pd.read_excel(file_path, sheet_name='Sheet2')
# print(df)# 假设日期列名为'Date',且数据类型为整数(Excel序列号)
# df['Date'] = pd.to_datetime(df['Date'], origin='unix', unit='D')  # 将Excel序列号转换为datetime对象
# df['Date'] = df['Date'].dt.strftime('%Y-%m-%d')  # 将datetime对象转换为字符串格式'年-月-日'list = ['创建日期','样品送达日期','要求完成日期','实际完成日期']for i in list:df[i] = pd.to_datetime(df[i], origin='unix', unit='D')  # 将Excel序列号转换为datetime对象df[i] = df[i].dt.strftime('%Y-%m-%d')  # 将datetime对象转换为字符串格式'年-月-日'# df['创建日期'] = pd.to_datetime(df['创建日期'], origin='unix', unit='D')  # 将Excel序列号转换为datetime对象
# df['创建日期'] = df['创建日期'].dt.strftime('%Y-%m-%d')  # 将datetime对象转换为字符串格式'年-月-日'print(df['是否加装急停开关'])
# 修改表中的Boolean值,满足表中要求的0-1,而不是false true,不然导入报错
df['是否加装急停开关'] = df['是否加装急停开关'].map({True: 1, False: 0})# df = df.fillna('')column_map ={'任务单编号': 'taskTicketId',
'工号': 'employeeId',
'委托人': 'requester',
'创建日期': 'creationDate',
'样品送达日期': 'sampleDeliveryDate',
'要求完成日期': 'requiredCompletionDate',
'实际完成日期': 'completionDate'
}print(df.columns)
col_names = df.columns.to_list()
col_names = [column_map[s] for s in col_names]
print(col_names)
df.columns = col_names# 步骤 3: 将DataFrame转换为JSON格式
# orient参数可以控制JSON的输出格式,例如 'records', 'index', 'columns', 'values', 'split' 等。
# 这里使用'records'格式,它会将每一行数据作为一个对象。orient='records'确保JSON输出为记录列表。
# force_ascii=False确保输出的JSON中包含非ASCII字符,例如中文。
# date_format='iso'确保日期以ISO格式输出。如果你需要其他日期格式,可以相应调整或去掉此参数。
json_data = df.to_json(orient='records', indent=4, force_ascii=False, date_format='iso',)# 步骤 4: 保存JSON文件
# output_file_path = 'output.json'  # 指定输出JSON文件的路径和名称
output_file_path = '车辆改造单数据库.json'  # 指定输出JSON文件的路径和名称with open(output_file_path, 'w', encoding='utf-8') as f:f.write(json_data)print("Excel数据已成功转换为JSON并保存到文件。")

📜文末寄语

  • 🟠关注我,获取更多内容。
  • 🟡技术动态、实战教程、问题解决方案等内容持续更新中。
  • 🟢《全栈知识库》技术交流和分享社区,集结全栈各领域开发者,期待你的加入。
  • 🔵​加入开发者的《专属社群》,分享交流,技术之路不再孤独,一起变强。
  • 🟣点击下方名片获取更多内容🍭🍭🍭👇

http://www.dtcms.com/wzjs/177589.html

相关文章:

  • 忒低网站长怎么做南宁百度网站推广
  • 做动态在网站需要学什么百度电脑端网页版入口
  • 做网站如何抓住客户的需求关键词搜索爱站
  • 做海报图片的网站建设企业网站多少钱
  • wordpress本站只对会员开放站长工具seo推广 站长工具查询
  • 石大远程网页设计与网站建设答案网站提交入口大全
  • 宣讲家网站美丽乡村建设青岛关键词推广seo
  • 做服装行业网站推广策划书模板范文
  • 网站建设abc企业宣传网站
  • 南京网站a建设云世家软文写作服务
  • 凡客诚品官网app下载成都网站排名 生客seo
  • 南昌有没有做企业网站和公司上海优化seo排名
  • 营销型企业网站建设教案某网站seo诊断分析
  • 做设计网站国内真正的永久免费建站
  • 哪个网站做美食视频引流推广犯法吗
  • 广西建设监理协会官网站企业网络推广方法
  • wordpress 博客系统百度网站排名关键词整站优化
  • 企业网站手机端跳转设置自助网站建设平台
  • 最大的网站建设公司排名天津seo推广服务
  • 做网站开发有哪些优点呢河南百度推广电话
  • 网站关于我们什么意思外链网盘
  • vps用什么软件做网站广东网站营销seo费用
  • 傻瓜式做网站程序济南优化哪家好
  • 学设计的网站推荐疫情最新数据
  • 南宁小程序定制开发公司陕西seo快速排名
  • 新浪云搭建wordpress百度seo报价方法
  • 个人宽带备案网站朝阳seo
  • 最新网页传奇青岛关键词优化seo
  • 个人可以做社区网站有哪些自己如何建立网站
  • 苏州网站制作设计百度网址是多少 百度知道