首先需要将data列表按照科目代码进行排序,然后遍历每一个科目,根据科目代码中"."的数量来判断科目级别,根据下一个科目代码中"."的数量来判断是否为末级科目,最后根据子级科目代码中","的数量来填充child_code字段。

以下是代码实现:

data = [
    ['1001', '现金', '', '', ''],
    ['1002', '银行存款', '', '', ''],
    ['1009', '其他货币资金', '', '', ''],
    ['1009.01', '外埠存款', '', '', ''],
    ['1009.02', '银行本票', '', '', ''],
    ['1009.03', '银行汇票', '', '', ''],
    ['1009.04', '信用卡', '', '', ''],
    ['1009.05', '信用证保证金', '', '', ''],
    ['1009.06', '存出投资款', '', '', ''],
    ['1101', '短期投资', '', '', ''],
    ['1101.01', '股票', '', '', ''],
    ['1101.02', '债券', '', '', ''],
    ['1101.03', '基金', '', '', ''],
    ['1101.10', '其他', '', '', ''],
    ['1102', '短期投资跌价准备', '', '', ''],
    ['1111', '应收票据', '', '', ''],
    ['1121', '应收股利', '', '', ''],
    ['1122', '应收利息', '', '', ''],
    ['1131', '应收账款', '', '', ''],
    ['1133', '其他应收款', '', '', ''],
    ['1141', '坏账准备', '', '', ''],
    ['1151', '预付账款', '', '', ''],
    ['1161', '应收补贴款', '', '', ''],
    ['1201', '物资采购', '', '', ''],
    ['1211', '原材料', '', '', ''],
    ['1221', '包装物', '', '', ''],
    ['1231', '低值易耗品', '', '', ''],
    ['1232', '材料成本差异', '', '', ''],
    ['1241', '自制半成品', '', '', ''],
    ['1243', '库存商品', '', '', ''],
    ['1244', '商品进销差价', '', '', ''],
    ['1251', '委托加工物资', '', '', ''],
    ['1261', '委托代销商品', '', '', ''],
    ['1271', '受托代销商品', '', '', ''],
    ['1281', '存货跌价准备', '', '', ''],
    ['1291', '分期收款发出商品', '', '', ''],
    ['1301', '待摊费用', '', '', ''],
    ['1401', '长期股权投资', '', '', ''],
    ['1401.01', '股票投资', '', '', ''],
    ['1401.02', '其他股权投资', '', '', ''],
    ['1402', '长期债权投资', '', '', ''],
    ['1402.01', '债券投资', '', '', ''],
    ['1402.02', '其他债权投资', '', '', ''],
    ['1421', '长期投资减值准备', '', '', ''],
    ['1421.01', '股权投资减值准备', '', '', ''],
    ['1421.02', '债权投资减值准备', '', '', ''],
    ['1431', '委托贷款', '', '', ''],
    ['1431.01', '本金', '', '', ''],
    ['1431.02', '利息', '', '', ''],
    ['1431.03', '减值准备', '', '', ''],
    ['1501', '固定资产', '', '', ''],
    ['1502', '累计折旧', '', '', ''],
    ['1505', '固定资产减值准备', '', '', ''],
    ['1601', '工程物资', '', '', ''],
    ['1601.01', '专用材料', '', '', ''],
    ['1601.02', '专用设备', '', '', ''],
    ['1601.03', '预付大型设备', '', '', ''],
    ['1601.04', '为生产准备的工具及器具', '', '', ''],
    ['1603', '在建工程', '', '', ''],
    ['1605', '在建工程减值准备', '', '', ''],
    ['1701', '固定资产清理', '', '', ''],
    ['1801', '无形资产', '', '', ''],
    ['1805', '无形资产减值准备', '', '', ''],
    ['1815', '未确认融资费用', '', '', ''],
    ['1901', '长期待摊费用', '', '', ''],
    ['1911', '待处理财产损溢', '', '', ''],
    ['1911.01', '待处理流动资产损溢', '', '', ''],
    ['1911.02', '待处理固定资产损溢', '', '', ''],
    ['2101', '短期借款', '', '', ''],
    ['2111', '应付票据', '', '', ''],
    ['2121', '应付账款', '', '', ''],
    ['2131', '预收账款', '', '', ''],
    ['2141', '代销商品款', '', '', ''],
    ['2151', '应付工资', '', '', ''],
    ['2153', '应付福利费', '', '', ''],
    ['2161', '应付股利', '', '', ''],
    ['2171', '应交税金', '', '', ''],
    ['2171.01', '应交增值税', '', '', ''],
    ['2171.01.01', '进项税额', '', '', ''],
    ['2171.01.02', '已交税金', '', '', ''],
    ['2171.01.03', '转出未交增值税', '', '', ''],
    ['2171.01.04', '减免税款', '', '', ''],
    ['2171.01.05', '销项税额', '', '', ''],
    ['2171.01.06', '出口退税', '', '', ''],
    ['2171.01.07', '进项税额转出', '', '', ''],
    ['2171.01.08', '出口抵减内销产品应纳税额', '', '', ''],
    ['2171.01.09', '转出多交增值税', '', '', ''],
    ['2171.02', '未交增值税', '', '', ''],
    ['2171.03', '应交营业税', '', '', ''],
    ['2171.04', '应交消费税', '', '', ''],
    ['2171.05', '应交资源税', '', '', ''],
    ['2171.06', '应交所得税', '', '', ''],
    ['2171.07', '应交土地增值税', '', '', ''],
    ['2171.08', '应交城市维护建设税', '', '', ''],
    ['2171.09', '应交房产税', '', '', ''],
    ['2171.10', '应交土地使用税', '', '', ''],
    ['2171.11', '应交车船使用税', '', '', ''],
    ['2171.12', '应交个人所得税', '', '', ''],
    ['2176', '其他应交款', '', '', ''],
    ['2181', '其他应付款', '', '', ''],
    ['2191', '预提费用', '', '', ''],
    ['2201', '待转资产价值', '', '', ''],
    ['2211', '预计负债', '', '', ''],
    ['2301', '长期借款', '', '', ''],
    ['2311', '应付债券', '', '', ''],
    ['2311.01', '债券面值', '', '',
下面data列表里的每级科目使用号进行分隔不使用pandas写出用python对data的科目级别:level、子级科目代码:child_code、是否末级:is_last字段进行填充要求child_code之间使用分隔符分隔的代码。codenamelevelchild_codeis_last1001现金1002银行存款1009其他货币资金100901外埠存款100902银行本票100903银行汇

原文地址: https://www.cveoy.top/t/topic/eYFi 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录