月薪5千也能靠Python管钱!3个实战案例,小白也能上手

360影视 日韩动漫 2025-09-07 15:28 2

摘要:你是不是也有过这样的经历:月底翻遍账单,不知道钱花在哪;想攒钱却总被各种“意外支出”打乱计划;夫妻间因为生活费分配、购物消费吵得面红耳赤?

你是不是也有过这样的经历:月底翻遍账单,不知道钱花在哪;想攒钱却总被各种“意外支出”打乱计划;夫妻间因为生活费分配、购物消费吵得面红耳赤?

我身边有个朋友小林,之前就是典型的“财务混乱户”——工资到账没几天就花得七七八八,老公买1000块的衣服不商量,她要800块家用却等半个月。直到她用Python做了3件事,不仅理清了家庭收支,3个月还存下2万,连夫妻间的财务矛盾都少了。

今天就把这份“小白也能学会的Python财务管理教程”分享给你,不用懂复杂代码,跟着复制粘贴就能用,看完就能解决90%的家庭财务问题。

很多人习惯用Excel记账,但实际用起来总有痛点:

• 手动录入账单太麻烦,漏记一笔就乱了;

• 想统计“每月餐饮花多少”“老公买衣服占比”,要手动拉公式,改一个数就得重算;

• 手机拍的消费小票,没法直接导进Excel,还得对着数字敲键盘。

而Python刚好能解决这些问题,关键是零基础也能学——不需要你懂编程原理,只要会复制代码、改几个参数,就能自动完成记账、统计、分析,甚至生成可视化报表。

举个简单的例子:你每月要统计“家庭各项目支出占比”,用Excel可能要1小时,用Python只要3行代码,10秒就能出结果,还能自动生成饼图,哪笔钱花多了一眼就看清。

接下来,我们直接上3个实战案例,每个案例都附完整代码和操作步骤,你跟着做就能立刻用起来。

痛点解决

小林之前最头疼的就是“记不住花了什么钱”——早上买早餐付现金、中午点外卖用微信、晚上超市购物刷信用卡,到了月底根本凑不全账单,夫妻间还总因为“你这笔钱花在哪”吵架。

用Python做一个“自动记账工具”后,她只要把微信、支付宝账单导出,代码就能自动导入数据,还能按“餐饮、交通、购物、家用”分类,连现金支出都能拍照录入,再也不用手动记。

具体操作步骤(附代码)

第一步:准备工具

首先要安装Python(新手直接搜“Python 3.9 安装教程”,跟着下一步点就行),然后安装2个常用库(用来处理数据和图片),打开电脑的“命令提示符”,复制粘贴下面2行代码,按回车就能安装:

pip install pandas

pip install pillow

第二步:导出手机账单

1. 微信账单导出:打开微信→“我”→“支付”→“钱包”→“账单”→右上角“导出账单”→选“用于个人对账”,会发送到你邮箱,下载后是Excel文件;

2. 支付宝账单导出:打开支付宝→“我的”→“账单”→右上角“…”→“开具交易流水证明”→选“个人流水”,同样下载Excel文件。

第三步:用Python自动导入+分类账单

复制下面的代码,粘贴到Python的“IDLE”(安装后自带的工具)里,然后改3个地方:

• 把“微信账单路径”“支付宝账单路径”改成你下载的文件位置(比如“C:/Users/Desktop/微信账单.xlsx”);

• 现金支出如果有拍照的,把“现金账单图片路径”改成照片位置。

# 自动导入微信、支付宝账单并分类

import pandas as pd

from PIL import Image

import pytesseract # 用来识别图片里的文字(需要额外安装:pip install pytesseract)

# 1. 导入微信账单

wechat_bill = pd.read_excel("微信账单路径.xlsx")

# 2. 导入支付宝账单

alipay_bill = pd.read_excel("支付宝账单路径.xlsx")

# 3. 识别现金账单图片(比如小票照片)

cash_img = Image.open("现金账单图片路径.jpg")

cash_text = pytesseract.image_to_string(cash_img, lang='chi_sim') # 识别中文

# 4. 按支出类型分类(可根据自己情况修改分类)

def classify_expense(description):

food_keywords = ["早餐", "午餐", "晚餐", "外卖", "超市"]

traffic_keywords = ["打车", "公交", "地铁", "油费"]

shopping_keywords = ["衣服", "鞋子", "化妆品"]

home_keywords = ["水电", "燃气", "房租", "家用"]

if any(keyword in description for keyword in food_keywords):

return "餐饮"

elif any(keyword in description for keyword in traffic_keywords):

return "交通"

elif any(keyword in description for keyword in shopping_keywords):

return "购物"

elif any(keyword in description for keyword in home_keywords):

return "家用"

else:

return "其他"

# 给账单加“支出类型”列

wechat_bill["支出类型"] = wechat_bill["商品"].apply(classify_expense)

alipay_bill["支出类型"] = alipay_bill["商品名称"].apply(classify_expense)

# 合并所有账单,保存为新文件(存在桌面)

all_bill = pd.concat([wechat_bill, alipay_bill])

all_bill.to_excel("C:/Users/Desktop/家庭总账单.xlsx", index=False)

print("账单导入完成!已保存到桌面")

第四步:查看结果

运行代码后,你会在桌面看到“家庭总账单.xlsx”,打开后会发现每笔支出都多了“支出类型”,比如“老公买衣服”会被分到“购物”,“交电费”会分到“家用”,再也不用手动分类了。

痛点解决

小林之前和老公吵得最多的,就是“你总说我乱花钱,到底谁花得多”。用Excel统计时,要手动筛选“老公的支出”“老婆的支出”,还得算占比,耗时又容易错。

用Python做了“支出统计工具”后,只要运行代码,就能自动算出“每人每月花了多少”“各项目支出占比”,还能生成图表,比如老公买衣服花了1000块,占总支出的15%,图表里一看就清楚,再也不用争。

具体操作步骤(附代码)

第一步:用案例1的“家庭总账单”

我们直接用前面生成的总账单,里面已经有“支出类型”“付款方式”(比如微信绑定的是老公的卡,支付宝是老婆的卡),所以先在账单里加一列“付款人”,比如“老公”“老婆”。

第二步:复制代码生成统计报表+图表

# 自动统计家庭支出并生成可视化图表

import pandas as pd

import matplotlib.pyplot as plt

# 设置中文显示(不然图表里的字会是乱码)

plt.rcParams['font.sans-serif'] = ['SimHei']

plt.rcParams['axes.unicode_minus'] = False

# 导入总账单

all_bill = pd.read_excel("C:/Users/Desktop/家庭总账单.xlsx")

# 1. 统计每人每月支出

person_monthly = all_bill.groupby(["付款人", all_bill["交易时间"].dt.to_period("M")])["金额"].sum

print("每人每月支出:")

print(person_monthly)

# 2. 统计各支出类型占比

type_ratio = all_bill.groupby("支出类型")["金额"].sum / all_bill["金额"].sum * 100

print("\n各支出类型占比(%):")

print(type_ratio)

# 3. 生成图表(饼图:支出类型占比;柱状图:每人每月支出)

fig, (ax1, ax2) = plt.subplots(1, 2, figsize=(12, 6))

# 饼图:支出类型占比

ax1.pie(type_ratio, labels=type_ratio.index, autopct='%1.1f%%', startangle=90)

ax1.set_title("家庭支出类型占比")

# 柱状图:每人每月支出

person_monthly_unstacked = person_monthly.unstack(fill_value=0)

person_monthly_unstacked.plot(kind='bar', ax=ax2)

ax2.set_title("每人每月支出对比")

ax2.set_xlabel("月份")

ax2.set_ylabel("支出金额(元)")

ax2.legend(title="付款人")

# 保存图表到桌面

plt.tight_layout

plt.savefig("C:/Users/Desktop/家庭支出分析图.png")

plt.close

print("\n统计完成!图表已保存到桌面")

第三步:看结果,解决财务矛盾

运行后会出现2个结果:

1. 文字版统计:比如“老公-2024-05:5800元,老婆-2024-05:3200元”,清楚看到每人花了多少;

2. 图表:左边饼图显示“购物占25%、餐饮占30%”,右边柱状图对比两人每月支出。

小林就是靠这个图表,和老公心平气和地谈——图表里清楚显示老公“购物支出1200元(其中衣服1000元)”,而家用支出只有500元,老公看完也没话说,之后主动调整了消费比例。

痛点解决

“想攒钱却没计划”是很多人的通病,小林之前也是:每月工资到账,先花再说,月底一看没剩多少。用Python做了“预算工具”后,她设定“每月存3000元”,代码会自动分配各项目预算,超支就提醒,3个月就存下2万。

具体操作步骤(附代码)

第一步:设定家庭预算目标

比如你家每月收入1.5万,想存5000元,那么可支出金额就是1万,然后分配到各项目:餐饮3000元、交通1000元、购物2000元、家用3000元、其他1000元。

第二步:复制代码生成预算表+超支提醒

# 自动生成月度预算+超支提醒

import pandas as pd

from datetime import datetime

# 1. 设定本月预算(可根据家庭情况修改)

this_month = datetime.now.strftime("%Y-%m")

budget = {

"支出类型": ["餐饮", "交通", "购物", "家用", "其他"],

"预算金额(元)": [3000, 1000, 2000, 3000, 1000],

"本月已花(元)": [0, 0, 0, 0, 0],

"剩余预算(元)": [0, 0, 0, 0, 0]

}

# 2. 导入本月账单,计算各类型已花金额

all_bill = pd.read_excel("C:/Users/Desktop/家庭总账单.xlsx")

all_bill["交易月份"] = all_bill["交易时间"].dt.strftime("%Y-%m")

this_month_bill = all_bill[all_bill["交易月份"] == this_month]

spent_by_type = this_month_bill.groupby("支出类型")["金额"].sum

# 3. 填充“本月已花”和“剩余预算”

budget_df = pd.DataFrame(budget)

for i, expense_type in enumerate(budget_df["支出类型"]):

if expense_type in spent_by_type.index:

budget_df.at[i, "本月已花(元)"] = spent_by_type[expense_type]

budget_df.at[i, "剩余预算(元)"] = budget_df.at[i, "预算金额(元)"] - budget_df.at[i, "本月已花(元)"]

# 4. 检查超支项目

overspent = budget_df[budget_df["剩余预算(元)"]

if not overspent.empty:

print(f"⚠️ {this_month}超支提醒:")

for _, row in overspent.iterrows:

print(f"- {row['支出类型']}:超支{abs(row['剩余预算(元)'])}元(已花{row['本月已花(元)']}元,预算{row['预算金额(元)']}元)")

else:

print(f"✅ {this_month}暂无超支项目")

# 5. 计算本月可存金额(假设月收入15000元)

monthly_income = 15000

total_spent = this_month_bill["金额"].sum

can_save = monthly_income - total_spent

print(f"\n {this_month}预计可存金额:{can_save}元(收入{monthly_income}元 - 已花{total_spent}元)")

# 保存预算表到桌面

budget_df.to_excel(f"C:/Users/Desktop/{this_month}家庭预算表.xlsx", index=False)

print(f"\n预算表已保存到桌面:{this_month}家庭预算表.xlsx")

第三步:用预算表控制支出

运行后会得到:

• 超支提醒:比如“购物超支500元”,立刻知道要减少购物;

• 可存金额:比如“预计可存4500元”,离5000元目标差500元,接下来几天就能控制消费;

• 预算表:打印出来贴在冰箱上,全家都能看到各项目还剩多少预算。

小林就是这样,每月初定预算,中旬看一次超支情况,月底看可存金额,3个月就从“月光”变成“每月存3000元”,攒下的钱还提前还了部分房贷。

很多人看到“Python”就觉得难,其实小林一开始也是零基础,这些问题她都遇到过,你照着解决就行:

1. 安装库时提示“找不到pip”?

答:安装Python时,记得勾选“Add Python to PATH”(很多新手会漏),如果没勾,搜“Python添加环境变量”,跟着改一下就行。

2. 图片识别现金账单时,文字识别不准?

答:拍小票时尽量拍清晰,光线要好,不要有阴影;如果识别错了,手动在Excel里改一下就行,毕竟现金支出不多。

3. 代码运行出错,显示“文件找不到”?

答:把账单文件放在桌面,然后把代码里的“路径”改成“C:/Users/你的电脑用户名/Desktop/文件名.xlsx”,比如“C:/Users/小林/Desktop/微信账单.xlsx”。

很多人觉得“管钱”很麻烦,但小林说:“之前我和老公因为钱吵架,不是因为穷,是因为彼此都不知道对方的付出——他觉得自己赚钱辛苦,我觉得自己操持家务累。直到用Python理清了账单,我们才看到:他赚钱不容易,我管家也没乱花钱,之后反而更体谅对方了。”

其实Python只是一个工具,它帮我们解决的不只是“记账”的问题,更是“家庭财务透明”的问题——当每笔支出都清晰可见,当预算和存钱目标明确,夫妻间少了猜忌,多了默契,日子自然就顺了。

今天这3个案例,你不用一下子全学会,先从“自动记账”开始,用10分钟跑通代码,你会发现:管好家庭财务,真的没那么难。

来源:绿叶菜

相关推荐