从第1天开始做真实项目,一切课程免费公开。用AI技术赋能家乡,🌱 零门槛、纯公益。
print("你好,保康!") → 按 Shift+Enter 运行name = input("你叫什么名字?")print(f"你好,{name},欢迎学习Python!")import os
import shutil
from pathlib import Path
# 获取桌面路径
desktop = Path.home() / "Desktop"
# 要整理的文件夹分类
folders = {
"图片": [".jpg", ".png", ".gif", ".jpeg"],
"文档": [".doc", ".docx", ".pdf", ".txt", ".xlsx"],
"压缩包": [".zip", ".rar", ".7z"],
}
# 创建分类文件夹
for folder_name in folders:
(desktop / folder_name).mkdir(exist_ok=True)
# 移动文件到对应文件夹
for file in desktop.iterdir():
if file.is_file():
for folder_name, exts in folders.items():
if file.suffix.lower() in exts:
shutil.move(str(file), str(desktop / folder_name / file.name))
print(f"移动了: {file.name} → {folder_name}")
print("🎉 桌面整理完成!")desktop 换成 Path.home() / "Downloads" 可整理下载文件夹;或在 folders 字典中新增分类,例如 "视频": [".mp4", ".avi", ".mov"]整理文件.py 到桌面 → Windows双击运行(或命令行执行 python 整理文件.py)pip install Pillow → 等待安装完成。如果遇到报错,把错误信息复制发给AI问"这个报错怎么解决"原始图片 → 把你要处理的图片(手机拍的、网上下载的都行)复制进去 → 确保图片格式是 .jpg、.png 等常见格式input_folder 变量为你的原始图片文件夹路径(如r"C:\Users\你的用户名\Desktop\原始图片")→ 保存为 批量处理图片.pypython 批量处理图片.py → 程序输出"📋 找到 N 张图片"表示成功 → 静待处理完成,每张图片会显示"✅ 压缩X%"的进度 → 处理好的图片自动保存在 已处理图片 文件夹中max_width(默认1920)控制图片最大宽度 → 修改 quality(默认85,范围1-100)控制压缩质量 → 修改 watermark_text 替换自己的水印文字 → 修改 name_prefix 自定义输出文件名前缀。每次修改后重新运行脚本查看效果from PIL import Image, ImageDraw, ImageFont
import os
from pathlib import Path
# 配置
input_folder = r"C:\原始图片"
output_folder = "已处理图片"
watermark_text = "保康AI人才孵化基地"
max_width = 1920
quality = 85
name_prefix = "产品图_"
os.makedirs(output_folder, exist_ok=True)
supported = (".jpg", ".jpeg", ".png", ".bmp", ".webp")
image_files = [f for f in Path(input_folder).iterdir() if f.suffix.lower() in supported]
if not image_files:
print("❌ 未找到图片文件")
exit()
print(f"📋 找到 {len(image_files)} 张图片")
processed = 0
for idx, img_path in enumerate(image_files, 1):
try:
img = Image.open(img_path)
original_size = os.path.getsize(img_path)
# 转RGB
if img.mode in ("RGBA", "P"):
img = img.convert("RGB")
# 等比例缩放
if img.width > max_width:
ratio = max_width / img.width
new_h = int(img.height * ratio)
img = img.resize((max_width, new_h), Image.LANCZOS)
# 加水印
draw = ImageDraw.Draw(img)
try:
font = ImageFont.truetype("arial.ttf", 36)
except:
font = ImageFont.load_default()
text_width = draw.textlength(watermark_text, font=font) if hasattr(draw, 'textlength') else 200
x = img.width - text_width - 20
y = img.height - 60
# 半透明水印
draw.text((x, y), watermark_text, font=font, fill=(180,180,180,128))
# 保存
output_name = f"{name_prefix}{idx:03d}.jpg"
output_path = os.path.join(output_folder, output_name)
img.save(output_path, "JPEG", quality=quality, optimize=True)
after_size = os.path.getsize(output_path)
ratio_pct = (1 - after_size / original_size) * 100
print(f"✅ [{idx}] {img_path.name} → {output_name} ({original_size/1024:.0f}KB→{after_size/1024:.0f}KB, 压缩{ratio_pct:.0f}%)")
processed += 1
except Exception as e:
print(f"❌ 处理失败 {img_path.name}: {e}")
print(f"\n🎉 完成!共处理 {processed}/{len(image_files)} 张图片")💡 提示:用AI辅助编程——不理解某个函数时,直接问AI"Pillow中resize的LANCZOS是什么意思"。截图报错信息问AI,逐步调整。这就是未来编程的主流方式。
pip install openpyxl pandasreport.py 并运行,它会创建一个带格式化标题和自适应列宽的多sheet报表import openpyxl
from openpyxl.styles import Font, PatternFill, Alignment
from openpyxl.utils import get_column_letter
# 创建Workbook
wb = openpyxl.Workbook()
# 重命名默认sheet
ws = wb.active
ws.title = "销售汇总"
# 标题样式
header_font = Font(name="微软雅黑", bold=True, size=11, color="FFFFFF")
header_fill = PatternFill(start_color="4472C4", end_color="4472C4", fill_type="solid")
header_align = Alignment(horizontal="center", vertical="center")
# 写入表头
headers = ["商品名称", "销量", "单价(元)", "总金额(元)"]
for col_idx, h in enumerate(headers, 1):
cell = ws.cell(row=1, column=col_idx, value=h)
cell.font = header_font
cell.fill = header_fill
cell.alignment = header_align
# 示例数据
data = [
["保康绿茶", 1200, 68, 1200*68],
["保康香菇", 800, 45, 800*45],
["保康核桃", 500, 30, 500*30],
]
for row_idx, row_data in enumerate(data, 2):
for col_idx, val in enumerate(row_data, 1):
ws.cell(row=row_idx, column=col_idx, value=val)
# 列宽自适应
for col in range(1, len(headers)+1):
ws.column_dimensions[get_column_letter(col)].width = 16
# 创建第二个sheet
ws2 = wb.create_sheet(title="图表数据")
ws2.cell(row=1, column=1, value="月份").font = header_font
ws2.cell(row=1, column=2, value="销售额").font = header_font
months_data = [["1月", 8500], ["2月", 9200], ["3月", 7800]]
for r, d in enumerate(months_data, 2):
ws2.cell(row=r, column=1, value=d[0])
ws2.cell(row=r, column=2, value=d[1])
wb.save("保康销售报表.xlsx")
print("✅ 报表已生成:保康销售报表.xlsx")data.csv 文件 → 使用 pandas.read_csv() 读取 → 循环写入Excel各sheetBarChart 在报表中插入柱状图/折线图,参考openpyxl图表文档glob.glob("*.xlsx") 遍历文件夹中所有Excel → 每个文件读取数据 → 汇总生成总报表pip install requests beautifulsoup4 pandas plotlyscrape_price.py,粘贴下方代码并运行import requests
import pandas as pd
from datetime import datetime
# 模拟保康农产品价格数据(实际项目中替换为真实爬虫URL)
data = {
"日期": ["2024-01", "2024-02", "2024-03", "2024-04", "2024-05", "2024-06"],
"茶叶(元/斤)": [68, 72, 85, 90, 88, 80],
"香菇(元/斤)": [42, 40, 38, 45, 48, 50],
"核桃(元/斤)": [28, 30, 32, 35, 33, 30],
}
df = pd.DataFrame(data)
df.to_csv("baokang_agriculture_prices.csv", index=False, encoding="utf-8-sig")
print("✅ 数据已保存到 baokang_agriculture_prices.csv")clean_data.py,使用 pd.read_csv() 读取 → df.isnull().sum() 检查缺失值 → df['日期'] = pd.to_datetime(df['日期']) 转换日期格式plot_trend.py,粘贴下方代码运行,生成 trend.html 可在浏览器中缩放查看import pandas as pd
import plotly.express as px
df = pd.read_csv("baokang_agriculture_prices.csv")
df_long = df.melt(id_vars=["日期"], var_name="品种", value_name="价格")
fig = px.line(df_long, x="日期", y="价格", color="品种",
title="保康县农产品价格趋势图",
markers=True)
fig.update_layout(
xaxis_title="月份",
yaxis_title="价格(元/斤)",
hovermode="x unified",
template="plotly_white"
)
fig.write_html("trend.html")
print("✅ 趋势图已生成:trend.html,请在浏览器中打开")pip install flask → 创建 app.py 返回 trend.html → 运行 python app.py 在本地 http://127.0.0.1:5000 查看pip install pandas xlsxwriterpivot_analysis.py,粘贴下方代码并运行import pandas as pd
import numpy as np
from datetime import datetime, timedelta
# 生成示例销售数据
np.random.seed(42)
dates = pd.date_range(start="2025-01-01", end="2025-06-30", freq="D")
products = ["保康绿茶", "保康香菇", "保康核桃", "保康木耳", "保康葛根"]
regions = ["城关镇", "黄堡镇", "过渡湾镇", "寺坪镇", "马桥镇"]
records = []
for date in dates:
for _ in range(np.random.randint(1, 4)):
records.append({
"日期": date,
"产品": np.random.choice(products),
"地区": np.random.choice(regions),
"销量(斤)": np.random.randint(50, 500),
"单价(元)": round(np.random.uniform(20, 100), 2),
})
df = pd.DataFrame(records)
df["月份"] = df["日期"].dt.month
df["季度"] = df["日期"].dt.quarter
df["销售额"] = df["销量(斤)"] * df["单价(元)"]
print(f"📋 原始数据: {len(df)} 条记录, {len(df.columns)} 列")
print(f"📊 日期范围: {df['日期'].min()} ~ {df['日期'].max()}")
print(f"📦 产品数: {df['产品'].nunique()}, 地区数: {df['地区'].nunique()}")pd.pivot_table() 按产品为行、月份为列汇总销售额# 透视表1:按产品×月份汇总
pivot1 = pd.pivot_table(df, values="销售额", index="产品",
columns="月份", aggfunc="sum", fill_value=0)
pivot1["合计"] = pivot1.sum(axis=1)
print("\n📊 透视表1: 各产品月度销售额")
print(pivot1.round(0))# 透视表2:按地区×季度汇总
pivot2 = pd.pivot_table(df, values="销售额", index="地区",
columns="季度", aggfunc=["sum", "count"], fill_value=0)
# 透视表3:产品×地区的交叉汇总
pivot3 = pd.pivot_table(df, values="销售额", index="产品",
columns="地区", aggfunc="sum", fill_value=0)
pivot3["地区合计"] = pivot3.sum(axis=1)xlsxwriter 引擎将原始数据和多张透视表写入同一个Excel文件的不同Sheet# 输出到Excel(多sheet)
output_file = "财务透视分析报表.xlsx"
with pd.ExcelWriter(output_file, engine='xlsxwriter') as writer:
# 原始数据
df.to_excel(writer, sheet_name="原始数据", index=False)
# 各透视表
pivot1.to_excel(writer, sheet_name="产品月度汇总")
pivot2.to_excel(writer, sheet_name="地区季度汇总")
pivot3.to_excel(writer, sheet_name="产品地区交叉")
# 调整列宽
for sheet_name in writer.sheets:
worksheet = writer.sheets[sheet_name]
worksheet.set_column("A:Z", 14)
print(f"\n🎉 报表已生成: {output_file}")财务透视分析报表.xlsx,浏览"原始数据"、"产品月度汇总"、"地区季度汇总"、"产品地区交叉"四个Sheet,体验数据透视分析的效果💡 提示:数据透视是数据分析的核心技能,掌握pivot_table基本可以应对90%的办公汇总需求。
baokang_knowledge/ 文件夹,创建 景点.md、美食.md、交通路线.md 等markdown文件,写入保康文旅信息(可从保康政府网站获取)pip install fastapi uvicorn openairag_bot.py,粘贴下方代码实现知识文档分块→生成embeddings→本地检索import os
from pathlib import Path
# 读取知识文档
def load_knowledge(base_dir="baokang_knowledge"):
docs = []
for fpath in Path(base_dir).glob("*.md"):
text = fpath.read_text(encoding="utf-8")
# 简单分块:按段落分割
chunks = [c.strip() for c in text.split("\n\n") if c.strip()]
docs.extend(chunks)
return docs
# 检索函数(简易版:关键词匹配)
def search_knowledge(query, docs, top_k=3):
scores = []
for i, doc in enumerate(docs):
score = sum(1 for kw in query if kw in doc)
scores.append((score, i))
scores.sort(reverse=True)
return [docs[i] for _, i in scores[:top_k]]
if __name__ == "__main__":
docs = load_knowledge()
print(f"✅ 加载了 {len(docs)} 个知识片段")main.py,用FastAPI定义 /chat 端点,接收问题返回答案from fastapi import FastAPI
from fastapi.middleware.cors import CORSMiddleware
from pydantic import BaseModel
from rag_bot import load_knowledge, search_knowledge
app = FastAPI(title="保康文旅问答Bot")
app.add_middleware(CORSMiddleware, allow_origins=["*"], allow_methods=["*"], allow_headers=["*"])
docs = load_knowledge()
class Question(BaseModel):
question: str
@app.post("/chat")
def chat(q: Question):
results = search_knowledge(q.question, docs)
answer = "\n\n".join(results) if results else "抱歉,我暂时没有找到相关信息。"
return {"answer": answer}
# 运行:uvicorn main:app --reload --host 0.0.0.0 --port 8000templates/ 下创建 index.html,包含输入框和按钮,调用 /chat API展示回答。运行 uvicorn main:app --reload --host 0.0.0.0 --port 8000 后打开 http://127.0.0.1:8000 测试包含6个Python必会技能代码、4个Go实战场景代码、10个数据结构精选资源。
📖 打开方向D 完整内容 →结合保康县产业真实需求设计,项目数据来源于本地统计局(tj.保康.top)
AI应用 / 数据分析 茶农决策参考
数据分析 指导种植
AI应用开发 品牌增值
全栈AI 旅游推广
AI应用 提升政务效率
低代码 减少库存积压
3个项目:AI助手 + 分析报告 + Python脚本 全部免费开放
方向A自动化办公 / 方向B应用开发 / 方向C低代码AI 每方向多个项目
打通猪八戒网/程序员客栈/自配单通道 导师带练 公益带路
茶叶/香菇/中药材/文旅/政务/小微商家 对接本地企业真实需求
保康AI编程人才孵化基地是一个面向保康县域的纯公益AI人才培养项目。我们秉承"学以致用、实战成才、服务保康"的理念,为本地青年、返乡人员、企业员工提供从零基础到AI应用开发的完整课程体系。
课程特色:项目驱动——每个模块产出真实可展示的成果;导师带路——实战导师指导项目开发与接单实践;县域特色——紧密结合保康茶叶、香菇、中药材、旅游等产业,解决本地真实需求。
所有课程全部免费公开,零门槛入学。我们相信,掌握AI技能是改变个人命运和家乡发展的最佳路径之一。