欢迎光临
我们一直在努力

DAY1 从不会改代码到独立做账龄分析:14 天 AI + Python 实战记录

前言

本文适合以下人群:

  • 已经搭建好 Python 环境

  • 熟悉 PyCharm 的基本操作

  • 会使用 AI 生成代码

  • 但完全不知道如何阅读代码、也不敢自己修改代码的财务人员(例如我)

如果你是 完全 0 基础,甚至还没有安装 Python,建议先在站内搜索相关教程,完成以下准备工作:

  • 安装 Python

  • 搭建开发环境(如 PyCharm)

  • 安装常用数据分析库(如 pandas 等)

本文不再重复这些内容。


学习目标说明

我们的目标不是成为程序员,而是:

以账龄分析为例,逐步熟悉并熟练使用 Python + AI 进行数据分析

重点有三点:

  • 看得懂 AI 写的代码

  • 知道哪一部分可以改、怎么改

  • 能把 Excel 里的数据变成可计算、可汇总的结果

  • 本文的学习环境为:

    • 开发工具:PyCharm

    • 辅助工具:ChatGPT

    • 学习方式:AI 教学 + 人工理解 + 小步练习


    针对“0 基础财务人员 + Python + AI + 账龄分析”学习路线,安排每天 1 小时左右,循序渐进

    天数学习内容学习目标
    第1天 Python 基础:变量、字符串、数字、列表、打印 print 熟悉 Python 基本语法,能读懂 AI 给出的简单代码
    第2天 Python 数据处理基础 + openpyxl:打开 Excel、读取数据、拆分行数据、简单统计 能用 Python 读取 Excel 数据,理解 for 循环、拆分数据、基本字典操作
    第3天 账龄分析初步:用字典统计不同账龄区间金额、条件判断 (if/elif/else) 理解账龄分析逻辑,把 Excel 数据按区间累加金额
    第4天 字典、循环、累计逻辑强化 + 输出结果美化 熟练掌握累加逻辑,学会在循环中统计并打印表格化结果
    第5天 字符串和数据类型转换(int()、float()) + 数据清洗基础 能处理 Excel 中的数字、文本混合问题,保证数据能计算
    第6天 使用 pandas 基础:读取 Excel、查看数据、简单统计 学会用 pandas 代替 openpyxl,提高数据操作效率
    第7天 pandas 筛选、条件判断、按账龄分组统计 用 pandas 实现账龄区间统计,逻辑和前面用字典一样,但更方便
    第8天 进阶账龄分析:自动生成账龄区间、可处理不同区间数 学会动态账龄分组,方便处理不同公司账龄策略
    第9天 pandas 累加金额、排序、求和 熟练使用 pandas 的分组累加、排序和汇总功能
    第10天 Excel 写入:将分析结果写回 Excel 学会把结果导出到 Excel,做报表
    第11天 小练习:结合 openpyxl + pandas 完成一份完整账龄分析 通过练习巩固前三周内容,熟练读写 Excel + 条件统计
    第12天 资金占用费计算(简单版) 能根据账龄数据计算占用资金成本
    第13天 高级统计:多维分析、图表展示(可选 matplotlib/seaborn) 能做更专业的数据分析,输出可视化报表
    第14天 总结 + 综合练习 + 生成博客模板 巩固账龄分析逻辑,输出完整分析报告,并记录学习笔记

    第一天学习内容:字符串(String)

    第一天不碰 Excel、不碰 pandas、不碰复杂逻辑
    只做一件事:学会看懂“文字数据”在 Python 里是怎么被处理的

    首先学Python 基础概念:变量与赋值

    在 Python 里:

    • 变量:就像一个小盒子,用来存放数据

    • 赋值(=):把数据放进这个小盒子

    例子:

    data = "张三,45,1000"

    解释:

    • data → 变量名,小盒子的名字

    • "张三,45,1000" → 字符串,是放进盒子里的内容

    • = → 赋值符号,把右边的内容放到左边的盒子里

    读作:“把字符串 '张三,45,1000' 放到名为 data 的盒子里”。

    你以后看到 Python 代码里的 =,99% 是这个意思:存储数据。


    一、什么是字符串(String)

    在 Python 中:被引号包起来的内容,就是字符串

    name = "张三"

    note = "欠款45天"

    无论是中文、英文、数字,只要加了引号,Python 都会把它当成字符串。

    name 是客户名

    note 是备注说明

    在财务场景中,以下内容几乎全部是字符串:

    • 客户名称

    • 备注说明

    • 日期(从 Excel 读进来时)


    二、字符串的常见操作

    1. 字符串拼接

    name = "张三"

    days = "45"

    text = name + "欠款" + days + "天" print(text)

    输出结果:

    张三欠款45天

    用途:
    生成描述字段、备注说明、提示文字等。
     


    2.查看字符串长度(len)

    text = "欠款45天"

    print(len(text))

    输出结果:

    5

    用途:
    后期做数据清洗、校验字段长度时会用到。


    3. 索引访问([ ])

    text = "欠款45天"
    print(text[0])
    print(text[2])

    输出结果:

    欠 4

    解释:

    • Python 索引从 0 开始

      • text[0] → 第 1 个字符

      • text[2] → 第 3 个字符

    • 用索引可以取某个具体位置的字符,比如从备注里抠数字。


    4. 字符串切片([start:end])

    text = "欠款45天"
    days = text[2:4]
    print(days)

    输出结果:

    45

    解释:

    • text[2:4] 意思是“从索引 2 开始,取到索引 4 之前(不含 4)”

    • Python 切片规则:左闭右开 [start:end)

    • 用途:提取连续的一段字符,比如从备注里提取天数或金额。


    5. 字符串拆分(split)

    data = "张三,45,1000"
    fields = data.split(",")
    print(fields)

    输出结果:

    ['张三', '45', '1000']

    意义:

    让 data 这个字符串自己做 split 这个动作,按照逗号切开。所以“.”不是随便的连接号,它表示“用这个变量自带的方法或属性”。

    • 一行文字变成一个列表

    • 可以独立拿到客户名、欠款天数、金额

    • 是后续数据分析的基础

    • 小贴士:data.split(",")为什么要用 . 来链接?

    • 在 Python 里,变量.方法() 就是告诉变量去用它自带的方法

    • 想象成:你有个遥控器(变量),上面有按钮(方法),点哪个按钮就做什么

    • 例子:

      • data.upper() → 把字符串变成大写

        data.strip() → 去掉字符串前后的空格

        data.split(",") → 按逗号拆开字符串

        所以:data.split(",")  翻译成一句人话就是:


    三、字符串转为数字

    在 Python 中:

    • "45" 是字符串

    • 45 才是数字

    必须显式转换:

    days = int("45") amount = float("1000")

    如果不转换,后续无法做任何统计计算。


    四、第一天综合练习

    data = "张三,45,1000"
    fields = data.split(",")

    name = fields[0]
    days = int(fields[1])
    amount = int(fields[2])

    print(name, days, amount)

    这个例子虽然简单,但已经包含了:

    • 数据拆分

    • 类型转换

    • 变量理解

    是后续账龄分析的雏形。

    详解:

    data = "张三,45,1000"
    解释:

    data 是变量名,相当于一个小盒子,名字叫 data

    "张三,45,1000" 是一个字符串(用引号包起来),就是盒子里的内容

    = 表示把右边的内容放进左边的盒子

    意义:我们把一行文本数据存到 Python 里,准备处理

    fields = data.split(",")
    解释:

    data.split(",") 是告诉 Python:让 data 里的字符串按逗号切开

    split() 方法返回一个列表(List),里面每个元素都是切开的部分

    执行结果:
    ['张三', '45', '1000']

    然后把这个列表存进 fields 这个变量里

    意义:把原始字符串拆成可以单独访问的“字段”,方便后续处理

    name = fields[0]
    解释:

    fields[0] 取列表的第 1 个元素(Python 索引从 0 开始)

    也就是 '张三'

    存到变量 name 里

    意义:单独拿到客户名,后面可以单独用

    days = int(fields[1])
    解释:

    fields[1] 取列表的第 2 个元素,也就是 '45'(注意是字符串)

    int() 把字符串 '45' 转成数字 45

    存到变量 days 里

    意义:欠款天数要算数值运算,比如判断逾期天数,所以必须转成数字

    amount = int(fields[2])
    解释:

    fields[2] 取列表的第 3 个元素 '1000'

    int() 转成数字 1000

    存到变量 amount

    意义:欠款金额也是数字,需要做统计、汇总、计算

    print(name, days, amount)
    解释:

    print() 把括号里的内容打印到屏幕上

    变量 name、days、amount 的值会依次显示

    输出结果:

    张三 45 1000
    意义:确认数据拆开、转换正确,可以直接用于计算或分析

    🔑 总结整段代码的逻辑
    把一行文字数据存进变量 data

    按逗号拆分成列表 fields

    分别把客户名、欠款天数、欠款金额存到单独变量里

    把这些变量打印出来验证正确


    第一天小结

    第一天不追求“会写代码”,而是:

    • 知道字符串是什么

    • 能看懂 split、索引、类型转换

    • 明白 Python 是一步一步处理数据的

    这一步打稳,后面学习 Excel、pandas、账龄分析就能比较轻松。

    赞(0)
    未经允许不得转载:171主机测评 » DAY1 从不会改代码到独立做账龄分析:14 天 AI + Python 实战记录
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址