一、引言

存在一个excel文件,如下: image.png 要将其转成还款计划,如下:

[
    {
        "loanCurrTerm": 1,
        "loanPmtDueDate": "2023-10-27",
        "loanGraceDate": "2023-10-27",
        "loanTermTotAmt": 2000,
        "loanTermPrin": 1364.3458474223337,
        "loanTermInt": 635.6541525776663,
        "loanTermFee": 0,
        "loanTermSvcFee": 0
    },
    {
        "loanCurrTerm": 2,
        "loanPmtDueDate": "2023-11-27",
        "loanGraceDate": "2023-11-27",
        "loanTermTotAmt": 2000,
        "loanTermPrin": 1375.2606142017123,
        "loanTermInt": 624.7393857982877,
        "loanTermFee": 0,
        "loanTermSvcFee": 0
    }
……
]

如果手敲,估计得花上不少时间,还可能出错,这样的事情就想办法让代码帮我们来做。 但是,你可能说能够写出代码来实现这个功能,我早就手敲完了,而且我还不定能够写出代码来。 现在有了AI工具,只要你会提问,一下子就能够生成代码。 以下是我的提问。

二、向AI提问

提问

有一个excel文件“花生好车还款计划.xls”,表头有这些字段loanCurrTerm、loanPmtDueDate、loanGraceDate、loanTermTotAmt、loanTermPrin、loanTermInt、loanTermFee、loanTermSvcFee,请excel每一行数据转成一个json体,json以展开状态格式化,将全部json体放到一个列表当中,然后打印出来,用python实现,用中文回答

回答

好的,以下是用Python将Excel文件的每一行数据转换为JSON,并将所有JSON放入一个列表中,并以展开状态格式化打印出来的代码示例:
import pandas as pd
import json

# 读取Excel文件
df = pd.read_excel('花生好车还款计划.xls')

# 将每一行数据转换为JSON并放入列表
json_list = []
for index, row in df.iterrows():
    json_data = {
        'loanCurrTerm': row['loanCurrTerm'],
        'loanPmtDueDate': row['loanPmtDueDate'].strftime('%Y-%m-%d'),
        'loanGraceDate': row['loanGraceDate'].strftime('%Y-%m-%d'),
        'loanTermTotAmt': row['loanTermTotAmt'],
        'loanTermPrin': row['loanTermPrin'],
        'loanTermInt': row['loanTermInt'],
        'loanTermFee': row['loanTermFee'],
        'loanTermSvcFee': row['loanTermSvcFee']
    }
    json_list.append(json_data)

# 将列表中的JSON数据以展开状态格式化打印出来
json_data = json.dumps(json_list, ensure_ascii=False, indent=4)
print(json_data)
请确保安装了pandas库和json库。将代码中的'花生好车还款计划.xls'替换为你的Excel文件的路径。运行代码后,将以展开状态格式化打印出每一行数据转换后的JSON,并将所有JSON放入一个列表中。

希望对你有所帮助!

image.png

经过我尝试,这段代码可以拿来直接使用,一下子就完成了我的工作。

image.png

三、加强版本

运行代码直接打印出来,复制粘贴还是太麻烦,因为有几十期的还款计划,从头拖动到结尾也费劲。 那就生成一个文件,就可以直接Ctrl+A全选复制粘贴。

提问

有一个excel文件“花生好车还款计划.xls”,表头有这些字段loanCurrTerm、loanPmtDueDate、loanGraceDate、loanTermTotAmt、loanTermPrin、loanTermInt、loanTermFee、loanTermSvcFee,请excel每一行数据转成一个json体,json以展开状态格式化,将全部json体放到一个列表当中,最后放到一个repay_plan.txt文件当中,保存在当前路径下,用python实现,用中文回答

回答

好的,以下是用Python将Excel文件的每一行数据转换为JSON,并将所有JSON放入一个列表中,最后保存到一个名为 `repay_plan.txt` 的文件中的代码实现:
import pandas as pd
import json

# 读取Excel文件
df = pd.read_excel('花生好车还款计划.xls')

# 将每一行数据转换为JSON并放入列表
json_list = []
for index, row in df.iterrows():
    json_data = {
        'loanCurrTerm': row['loanCurrTerm'],
        'loanPmtDueDate': row['loanPmtDueDate'].strftime('%Y-%m-%d'),
        'loanGraceDate': row['loanGraceDate'].strftime('%Y-%m-%d'),
        'loanTermTotAmt': row['loanTermTotAmt'],
        'loanTermPrin': row['loanTermPrin'],
        'loanTermInt': row['loanTermInt'],
        'loanTermFee': row['loanTermFee'],
        'loanTermSvcFee': row['loanTermSvcFee']
    }
    json_list.append(json_data)

# 将列表中的JSON数据以展开状态格式化并保存到文件
with open('repay_plan.txt', 'w', encoding='utf-8') as file:
    json.dump(json_list, file, ensure_ascii=False, indent=4)
请确保安装了pandas库和json库。将代码中的'花生好车还款计划.xls'替换为你的Excel文件的路径。运行代码后,将会生成一个名为 `repay_plan.txt` 的文件,其中包含转换后的JSON数据。

希望对你有所帮助!

经过我的尝试,这个生成的代码也是可以直接使用,赞不赞!

image.png