下面data列表里的每级科目使用号进行分隔不使用pandas写出用python对data的科目级别:level、子级科目代码:child_code、是否末级:is_last字段进行填充要求child_code之间使用分隔符分隔的代码。codenamelevelchild_codeis_last1001现金1002银行存款1009其他货币资金100901外埠存款100902银行本票100903银行汇
首先需要将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', '债券面值', '', '',
原文地址: https://www.cveoy.top/t/topic/eYFi 著作权归作者所有。请勿转载和采集!