|
|

楼主 |
发表于 2021-5-29 02:08:19
|
显示全部楼层
2. 为了分析某网站中不同中文词的出现频率,利用现有的工具软件无法满足所有的统计要求,要求自己编写程序来解决。请结合本事例,通过流程图来描述用计算机解决问题的一般过程。
7 U o9 a( z9 B( F" E! x$ u: P( P例1> 答:
) ?6 d( o' J! E: W5 M; r* c2 q注意:请先安装第三方库 jieba,运行 CMD,输入 python -m pip install jieba --user (其他库安装方法类似) 课外拓展: 用python,统计一个txt中某三个中文词语出现的次数?(福利)
7 @/ z( {! E# R. e8 _ 方法一:使用自带的count
* P5 C% a! G+ H6 r$ f1 G3 ~- words = ["信息", "知识", "智慧"]- B5 g) @( w/ {( }5 V s. D
- def countInFile(filename):
1 d F0 f' H8 D - with open(filename) as f:
8 S3 I; T, A% t( \ - contents = f.read()
7 d# R4 `- \5 e8 v5 E8 { - return sum(contents.count(x) for x in words)9 C; u* }* M5 B
- print(countInFile('1.txt'))& [7 w2 \) i% r+ X( ~$ D% f
复制代码 方法二:使用正则表达式- """
. c& X ]' o3 e7 A" S0 v+ v+ b - 《信息技术》(必修一)P67页第2题(分析某网站中不同中文词的出现频率): r& X* W$ n( i1 L9 y
- + D0 P9 C$ a" i. k, u
- Version: Python 3.x
* ?; n7 O! \& n a2 F - Team: 新大榭; g6 r' y7 B" U' |1 c0 j R7 @( z
- Author: 张黎斌* K2 J6 M" F& L/ S" J0 c' P
- update: 2021-05-29
( g8 L! [( Y/ J - Level: B% {. e( U! i }
- ; `8 J, K/ e' z7 d( Z
- """/ X$ z8 C, c% z7 _6 _
- * ` T- Q& E5 |- s0 n! L
- # 源代码如下,仅供参考!
/ D& e9 t; C: Q
1 F3 c, \1 d: o( _ d7 N2 d- import re
/ t2 a. t7 r- w0 y8 E# j% x0 ]6 ] - words = "信息|知识|智慧"
6 z1 X7 C& E0 B1 }! f - def countInFile(filename):% q# _; u# a; S# Y8 w: |, A8 x. F
- with open(filename) as f:
3 U& X: t& T0 Q: n( L+ W - contents = f.read()( ^7 v1 Z) {) D: v9 ?$ k
- return sum(1 for match in re.finditer(words, contents))) r$ P, n7 Z4 t2 k N* S6 A9 W
- print(countInFile('1.txt'))
8 \: r+ Y9 Z* F
复制代码 |
|