首页 文章 精选 留言 我的

精选列表

搜索[Python],共10000篇文章
优秀的个人博客,低调大师

Python 尽调报告自动成稿:复用报告引擎,立场变投资建议

问题 133–142 的 ReportEngine 把"数据进、文档出"跑通了。尽调报告结构类似但立场不同:结论不是"公允反映",而是"建议投资/审慎/否决"及"定价与对赌条款建议"。直接复用 142 引擎,把章节内容换成尽调视角即可,不重写骨架。 示例代码 plaintext ```javascript from docx import Document class DDReportEngine: SECTIONS = ["标的概况", "资金与关联核查", "收入毛利真实性", "表外风险", "估值与建议"] # 尽调模板(固定) def __init__(self, data): self.data = data self.doc = Document() def render(self): self.doc.add_heading(self.data.get("title", "尽职调查报告"), level=0) for sec in self.SECTIONS: self.doc.add_heading(sec, level=1) self.doc.add_paragraph(self.data.get("content", {}).get(sec, "")) # 结论段:投资建议(尽调独有) self.doc.add_heading("投资建议", level=1) self.doc.add_paragraph(self.data.get("advice", "(待填)")) return self.doc def save(self, path): self.render().save(path) return path eng = DDReportEngine({ "title": "山东源泰新材料 尽职调查报告", "advice": "审慎推进,估值下调 20%,对赌条款需加业绩兜底", }) print(eng.save("dd_report.docx")) ``` 关键点 - 引擎模板从"审计意见/三表/附注"换成"标的概况/核查/表外/估值/投资建议",结构思维照搬 142。 - 立场差异在"投资建议"章节:审计给"意见类型",尽调给"投不投、什么价、什么条款"。 - 各章节内容直接消费 144–150 的函数产出(红旗、表外敞口、估值偏离),数据源一致。 小结 尽调报告 = 审计引擎换皮。模板与变量分离的逻辑不变,变的是章节语言和最终结论的立场,复用率拉满。 --- 你出尽调报告最费时的是"核查过程"还是"投资建议措辞"?评论区聊。 如果有用,点赞收藏关注,留下尽调难题。下期预告:尽调工具箱总览(与审计工具箱映射,呼应速查表)。 会计师事务所的一名注册会计师

优秀的个人博客,低调大师

Python 调整分录汇总表自动出:审计证据附录一键生成

问题 审计报告附录要附"审计调整分录汇总表",列明科目、借、贷、说明。114 篇识别了异常调整,81 篇做过调整汇总,本篇把 adjustments(来自 133 的 data)渲染成 Word 表格,作为报告证据附录。 示例代码 plaintext ```javascript from docx import Document from docx.shared import Pt from docx.oxml.ns import qn def set_cn_font(run, name="仿宋_GB2312", size=12): run.font.size = Pt(size); run.font.name = name rpr = run._element.get_or_add_rPr() rf = rpr.find(qn('w:rFonts')) if rf is None: rf = rpr.makeelement(qn('w:rFonts'), {}); rpr.append(rf) rf.set(qn('w:eastAsia'), name) def adjustment_table(doc, adjs): h = doc.add_heading("审计调整分录汇总表", level=1) for r in h.runs: set_cn_font(r, "宋体", 16) t = doc.add_table(rows=1, cols=4); t.style = "Light Grid" for c, txt in zip(t.rows[0].cells, ["科目", "借方", "贷方", "说明"]): c.text = txt; set_cn_font(c.paragraphs[0].runs[0]) for a in adjs: c = t.add_row().cells c[0].text, c[1].text, c[2].text, c[3].text = ( a["科目"], str(a["借"]), str(a["贷"]), a["说明"]) for cc in c: set_cn_font(cc.paragraphs[0].runs[0]) return doc adjs = [{"科目": "存货", "借": 30, "贷": 30, "说明": "补提跌价准备"}, {"科目": "其他应收款", "借": 50, "贷": 50, "说明": "收回股东占用"}] doc = Document(); adjustment_table(doc, adjs); doc.save("adj.docx") ``` 关键点 - 表格四列(科目/借/贷/说明)是监管和所内底稿的通用格式,固定后可直接归档。 - adjs 与 133 的 adjustments 同源,异常调整(114 标红)也应并入此表并加"异常"标记。 - 汇总表是审计证据附录,和 137 意见段、138 发现段构成"结论—证据—建议"闭环。 小结 调整分录表 = 审计结论的凭证。把 adjustments 渲染成标准四列表格,报告证据链完整、可复核。 --- 你出调整表最易漏的是"重分类"还是"错报更正"标注?评论区说。 如果有用,点赞收藏关注,留下审计难题。下期预告:多报告批量生成(三国企并行,统一模板循环出稿)。 会计师事务所的一名注册会计师

优秀的个人博客,低调大师

Python 附注自动生成进阶:从审定数+政策 dict 一键出注释

问题 104 篇讲过附注基础,本篇进阶成完整 Word 附注:每个报表项目生成"期末余额/期初余额/构成说明/会计政策"四要素段落,政策文字模板化,避免每人写一份不同表述。直接吃 133 的 audited 数据结构。 示例代码 plaintext ```javascript from docx import Document from docx.shared import Pt from docx.oxml.ns import qn def set_cn_font(run, name="仿宋_GB2312", size=12): run.font.size = Pt(size); run.font.name = name rpr = run._element.get_or_add_rPr() rf = rpr.find(qn('w:rFonts')) if rf is None: rf = rpr.makeelement(qn('w:rFonts'), {}); rpr.append(rf) rf.set(qn('w:eastAsia'), name) def build_notes(doc, notes): h = doc.add_heading("财务报表附注", level=1) for r in h.runs: set_cn_font(r, "宋体", 16) for n in notes: p = doc.add_paragraph() set_cn_font(p.add_run("%s:期末余额 %s,期初余额 %s;%s" % ( n["name"], n["cur"], n["prev"], n["policy"]))) return doc notes = [ {"name": "应收账款", "cur": 1200, "prev": 980, "policy": "预期信用损失模型"}, {"name": "存货", "cur": 5400, "prev": 5100, "policy": "成本与可变现净值孰低"}, ] doc = Document(); build_notes(doc, notes); doc.save("notes.docx") ``` 关键点 - 附注文字模板化:"X:期末余额 a,期初余额 b;政策 c",改数不动结构,全所表述统一。 - notes 是 list of dict,字段固定(name/cur/prev/policy),和 133 的 audited 可同源。 - 复杂项目(如应收按账龄、存货按类别)把 policy 换成更长的构成说明串即可,函数不变。 小结 附注 = 结构化数据 + 模板文字。把审定数填进模板段落,出稿从半天降到十分钟,且人人写出统一口径。 --- 你做附注最烦的是"政策描述"还是"数字勾稽"?评论区说。 如果有用,点赞收藏关注,留下审计难题。下期预告:审计意见段自动生成(无保留/保留/否定/无法表示一键切换)。 会计师事务所的一名注册会计师

优秀的个人博客,低调大师

Python 三个国企并行批处理:统一模板 + 科目映射 + glob 循环

问题 三个国企科目口径各不相同("现金"vs"库存现金"、"应收"vs"应收账款"),逐个跑既慢又易错。解法:统一模板 + 科目映射 dict 归一 + glob 循环,一处改全员生效。 示例代码 plaintext ```javascript import glob, os MAPPING = {"现金": "库存现金", "银行存款": "银行存款", "应收": "应收账款"} def normalize(rows): for r in rows: r["科目名称"] = MAPPING.get(r["科目名称"], r["科目名称"]) return rows def batch_run(folder): for f in glob.glob(os.path.join(folder, "*国企*.xlsx")): print("处理:", os.path.basename(f)) # normalize(rows) + balance_check() + jingze_metrics() ... batch_run("./三国企") ``` 关键点 - 映射 dict 把异名科目归一到统一编码,是三国企横向可比的前提(见 130)。 - 循环体内复用 126 的 balance_check、128 的 jingze_metrics,不写第二遍。 - 文件命名约定("*国企*")让 glob 精准匹配,避免误扫其他项目。 小结 批处理把"三个项目三次手工"压缩成"一次循环"。映射归一后,三国企数据才能真正摆到一起比。 --- 你做多项目合并最常卡在"科目口径"还是"文件命名乱"?评论区聊。 如果有用,点赞收藏关注,留下审计难题。下期预告:横向 benchmark——三国企同口径指标并排对比。 会计师事务所的一名注册会计师

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册