当前位置: 首页 > wzjs >正文

网站维护是什么职业做营销策划的公司

网站维护是什么职业,做营销策划的公司,黑icp 网站建设,怎么学做网站构建一个Python命令行工具:玩转标准库中的数据处理与日志记录 导语 刚从 iOS 转向 Python 开发的你,可能会被 Python 丰富的标准库惊艳到。本篇博客,我们将围绕 json、csv、re、datetime、collections、argparse 和 logging 等高频标准库&a…

构建一个Python命令行工具:玩转标准库中的数据处理与日志记录

导语

刚从 iOS 转向 Python 开发的你,可能会被 Python 丰富的标准库惊艳到。本篇博客,我们将围绕 jsoncsvredatetimecollectionsargparselogging 等高频标准库,构建一个实用的命令行工具:它能分析文件中的关键词出现情况,并生成清晰的日志记录。这不仅巩固你对标准库的理解,也能为你的 Python 项目开发积累基础能力。


知识点预览

阅读本篇你将掌握:

  • 如何使用 argparse 构建命令行接口

  • 如何读取和处理 jsoncsv 文件

  • 使用 re 正则提取关键词信息

  • 利用 collections.Counter 进行词频统计

  • datetime 时间处理与 logging 日志记录的结合

  • 构建具备实用性的 CLI 工具结构


正文结构

背景介绍:为什么要掌握这些标准库?

Python 的强大很大程度上来源于其标准库的丰富性。在实际开发中,处理文本数据、日志记录、命令行参数解析都是必备技能。相比 iOS 更偏 UI 的开发,Python 更注重数据和脚本实用性,因此构建一个命令行数据处理工具将是你迈向后端或数据处理方向的起点。


技术方案拆解
  • argparse:构建 CLI 参数接口

  • json / csv:读取结构化数据文件

  • re:正则匹配关键词

  • Counter:快速统计词频

  • datetime:生成带时间戳的输出

  • logging:日志记录,便于排查问题


实战步骤讲解:关键词统计 CLI 工具
1. 项目结构
keyword_counter/
├── main.py               # CLI 主程序
├── utils.py              # 工具函数封装
├── sample.json           # 示例输入数据
├── logs/
│   └── run_20250701.log  # 日志文件输出

2. main.py 主入口(使用 argparse 和 logging)
import argparse
import logging
from utils import process_filedef setup_logger():logging.basicConfig(filename=f'logs/run_{__import__("datetime").datetime.now().strftime("%Y%m%d")}.log',level=logging.INFO,format='%(asctime)s - %(levelname)s - %(message)s')def main():parser = argparse.ArgumentParser(description="关键词计数工具")parser.add_argument("filepath", help="文件路径,支持 .json 或 .csv")parser.add_argument("keyword", help="要查找的关键词")args = parser.parse_args()setup_logger()logging.info("程序启动")process_file(args.filepath, args.keyword)logging.info("程序结束")if __name__ == "__main__":main()

3. utils.py 工具函数封装
import json
import csv
import re
from collections import Counter
from pathlib import Path
import loggingdef process_file(filepath, keyword):path = Path(filepath)if not path.exists():logging.error(f"文件不存在: {filepath}")print(f"[错误] 文件不存在:{filepath}")returnlogging.info(f"开始处理文件: {filepath}")if filepath.endswith(".json"):with open(filepath, "r", encoding="utf-8") as f:data = json.load(f)content = json.dumps(data)  # 统一转成字符串处理elif filepath.endswith(".csv"):with open(filepath, "r", encoding="utf-8") as f:reader = csv.reader(f)content = "\n".join([",".join(row) for row in reader])else:logging.error("不支持的文件格式")print("[错误] 只支持 .json 或 .csv 文件")returnmatches = re.findall(fr"\b{re.escape(keyword)}\b", content, flags=re.IGNORECASE)count = Counter(matches)print(f"🔍 在文件中找到 {len(matches)} 次关键词「{keyword}」")logging.info(f"关键词统计完成:{count}")

4. 示例运行(命令行)
python main.py sample.json apple

输出:

🔍 在文件中找到 4 次关键词「apple」

日志文件(logs/run_20250701.log)中:

2025-07-01 14:30:01,123 - INFO - 程序启动
2025-07-01 14:30:01,456 - INFO - 开始处理文件: sample.json
2025-07-01 14:30:01,789 - INFO - 关键词统计完成:Counter({'apple': 4})
2025-07-01 14:30:01,800 - INFO - 程序结束

常见问题与踩坑经验
问题解决方案
UnicodeDecodeError添加 encoding="utf-8" 打开文件
正则匹配大小写不敏感加上 flags=re.IGNORECASE
日志无输出或覆盖旧日志使用时间戳命名日志文件,或配置 filemode='a'
argparse 不生效确保是在 __name__ == "__main__" 中调用

拓展建议或进阶路径
  • 添加文件夹支持:使用 os.walk 递归处理多个文件

  • 增加图表输出:结合 matplotlib 可视化词频统计结果

  • 封装成可执行包:结合 setuptoolspoetry 打包为工具

  • 与日志服务对接:如输出到 ELK 日志平台


总结 & 实用建议

本篇文章带你一次性吃透多个 Python 常用标准库,并通过构建一个实用的命令行关键词统计工具实现落地。对于转型中的开发者而言,这种带实战导向的练习能迅速提升你对 Python 在数据处理、脚本自动化方面的掌控力。

📌 实用建议:

  • 每个标准库都有背后的使用场景,理解 > 死记

  • 推荐把工具封装为可重复使用的组件,逐步构建自己的代码仓库

  • 掌握日志记录,将极大提升你调试和维护 Python 项目的效率

http://www.dtcms.com/wzjs/333702.html

相关文章:

  • 网站建设 提供源码网络推广团队哪家好
  • 阿里巴巴网站建设代理网络推广外包公司干什么的
  • 珠海网站建设 金蝶360广告联盟平台
  • 哪个网站做童装批发常用seo站长工具
  • 国外网站在国内做镜像站点企业推广文案范文
  • 做网站栏目是什么意思优化什么建立生育支持政策体系
  • 建模软件石家庄seo推广
  • 做特卖网站有哪些怎么搞自己的网站
  • iapp如何用网站做软件营销战略有哪些内容
  • 委托网站建设合同范本手机营销推广方案
  • 我在日本做动画视频网站自己建网站需要钱吗
  • 大型企业的微网站谁做百度账号购买1元40个
  • 自适应手机网站 css股票指数是什么意思
  • 智能网站开发小程序开发工具
  • 广州市开发区建设网站什么是百度指数
  • 辽宁建设工程信息网怎么查人员关键词优化难度查询
  • 贵州建设厅网站官网做优化的网站
  • 做外贸实用网站网页制作工具有哪些
  • 浙江建筑网站上海网络推广培训机构
  • 深圳 电子商务网站开发网站推广优化业务
  • 厦门制作网站哪家好设计一个公司网站多少钱
  • 公司网站如何做seo要点
  • 免费企业信息查询网站网络营销策划书步骤
  • 给你一个网站怎么做的吗怎么创建一个网页
  • 广州市品牌网站建设服务机构服务器域名怎么注册
  • 开发一个网站需要多少人优化百度涨
  • php网站怎么做伪静态第三方网站流量统计
  • 宝安做棋牌网站建设哪家服务好百度智能云
  • 网站404页面优化珠海企业网站建设
  • 免费招聘网站平台网站浏览器