Python 入门:用一个词频统计小练习理解循环、函数与文件处理
刚开始学编程,最容易卡住的不是语法本身,而是不知道学了语法能做什么。本文用一个很小、但完整可运行的练习——统计文本里每个词出现的次数——把 Python 入门最常用的几块拼起来:读取文件、循环、函数和字典。目标不是写出很漂亮的代码,而是先跑通一次,再慢慢改。
先定一个可运行的小目标
很多人一上来就想做大项目,结果在环境和细节里耗尽耐心。更好的办法是把目标缩到一句话:读入一个文本文件,输出出现次数最多的十个词。这个目标足够具体,改起来也有方向:换一份文本、换一种排序,结果都会立刻变化。
准备环境只要两步
先确认已经安装 Python,在终端输入 python 加上 version 参数,能看到版本号就够了。不必一开始装很多工具,也不用纠结编辑器。把代码保存好,再用 python 命令运行它,先看到输出,再谈优化。
核心概念都在这段代码里
from collections import Counter
import re
def count_words(path):
with open(path, encoding='utf-8') as f:
text = f.read()
words = re.findall(r'[A-Za-z]+', text.lower())
return Counter(words)
if __name__ == '__main__':
for word, num in count_words('sample').most_common(10):
print(word, num)
值得停下来理解的点有三个:with open 会在用完文件后自动关闭文件;encoding 参数能避免中文乱码;Counter 是专门计数的字典,most_common 可以直接取出频率最高的词。
新手最常见的三个坑
第一是缩进,同一层代码必须对齐,混用空格和制表符很容易报错。第二是路径问题,程序默认在当前目录找文件,文件不在同一目录时要写相对路径或绝对路径。第三是把所有逻辑都写进主流程,改起来很痛苦,拆成函数后测试和复用都会简单很多。
跑通之后可以这样进阶
先过滤掉常见词,再把文件名改成命令行参数,让程序可以处理任意文本,最后试着统计日志里的错误关键词。每一个小改动都是一次真实练习。先跑通这个小练习,理解循环、函数和字典怎么配合,之后再学模块和异常处理,都会有具体的落脚点。
- 点赞
- 收藏
- 关注作者
评论(0)