新大榭论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

《新大榭》- 创大榭地方网络社区先锋品牌 新大榭始终专注于地方网络社区平台的建设 关于我们- [大记事]- 留言建议- [新手报道]

发布 .新大榭软件管家(Excel版) V6.0版 财务/仓库/生产/销售/采购/行政/人事/校园 .公告 - 客户 - 打赏 - 职场 - Excel - Python.

新大榭镜像-搜音乐-法律库-图书馆-高中课堂-实验室 广告是为了能更好的发展 [欢迎商家支持本站互利共赢] 广告位招租.首页黄金广告位等您来!联系 13566035181

查看: 146|回复: 1

[必修1] 7152 - 《信息技术》(必修一)P067【思考与练习】

 关闭 [复制链接]
发表于 2021-3-17 12:36:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转新大榭论坛!

您需要 登录 才可以下载或查看,没有账号?注册

x
第三章:算法的程序实现
' H# c% _1 A7 p% L9 G
// 3.1  用计算机编程解决问题的一般过程《思考与练习》 第 - 67 - 页
1. 请描述用计算机编程验证“哥德巴赫猜想”的一般过程。8 v. Z+ N  \- W9 o" F
哥德巴赫猜想:编写函数,接收一个偶数,输出两个素数,并且两个素数之和等于原来的偶数,如果有多组,则全部输出。
& H6 U6 C9 O" k6 j" ~* B( f
例1> 答:仔细又重新梳理了一下思路:4 p; M5 A7 N7 Y6 E1 Z2 U
可以定义两个函数,一个判断是否为素数,一个分解。利用前面的两个函数生成n范围内的素数列表。如果两层for循环中的两个迭代变量之和等于参数n,就将这两个变量加入列表中,循环完所有的情况后返回列表,并打印输出。
游客,如果您要查看本帖隐藏内容请回复

AP067_01_01_7152.zip

919 Bytes, 下载次数: 17, 下载积分: 财富 -1 点

例1 源代码

新大榭Python学习社区培训、Excel业务指导、办公软件定制、网站建设;新大榭探索实验室欢迎您!http://lab.daxie.net.cn/
Q群推荐 大榭本地求职招聘QQ群,欢迎转发分享本地招聘信息资讯! 官方招聘1群(已满);官方招聘2群:315816937 *
 楼主| 发表于 2021-5-29 02:08:19 | 显示全部楼层
2. 为了分析某网站中不同中文词的出现频率,利用现有的工具软件无法满足所有的统计要求,要求自己编写程序来解决。请结合本事例,通过流程图来描述用计算机解决问题的一般过程。( m! u, e9 l+ B6 k* M8 |
例1> 答:
游客,如果您要查看本帖隐藏内容请回复

& J" [* L+ _  r" i" c注意:请先安装第三方库 jieba,运行 CMD,输入 python -m pip install jieba --user (其他库安装方法类似)
课外拓展: 用python,统计一个txt中某三个中文词语出现的次数?(福利)1 R+ Y" w# A4 M  x$ `. ?

方法一:使用自带的count
! X  C* n/ P/ h5 u: L3 N+ O. z. S
  1. words = ["信息", "知识", "智慧"]  T0 `- Q% C7 o7 T. l
  2. def countInFile(filename):! j2 L* H0 Q. ~+ V" R5 y
  3.     with open(filename) as f:9 d9 P; s1 g& l+ o; u3 O; h3 N4 f
  4.         contents = f.read()
    5 K, k* `8 v: S3 ~
  5.         return sum(contents.count(x) for x in words)
    5 c4 I. x, E8 E& p; \- U4 U
  6. print(countInFile('1.txt'))
    3 X+ o  i' n( h, W9 J% j) U) x
复制代码
方法二:使用正则表达式
  1. """' c) T9 z0 V; x+ n( t% `/ [
  2. 《信息技术》(必修一)P67页第2题(分析某网站中不同中文词的出现频率); V5 z* m1 B1 H
  3. ' y( Z& J# t+ q" v
  4. Version: Python 3.x- R, R1 Q) Y0 T/ K6 `  C
  5. Team: 新大榭
    7 @1 H% N# I0 {- L' F( S; X
  6. Author: 张黎斌. t4 t* P- v0 D$ |  f6 r9 Y
  7. update: 2021-05-29
    5 I  z9 S1 N4 i& P7 k# R6 \: N
  8. Level: B# W7 b1 e1 _  b5 C  {8 R

  9. 8 N6 l5 B0 z* f
  10. """
    " u) o1 L( J" y$ M$ H$ l5 U' y8 C

  11. % v4 q8 e  [# `& G$ o% |
  12. # 源代码如下,仅供参考!
    / Q1 `8 e$ V/ \- g% ?- ]; A
  13. : `) j' z% C# `
  14. import re
    " |% V2 L. J  K& r+ c: ^
  15. words = "信息|知识|智慧"
    % C- M* Y( Z& h, {8 x, Z
  16. def countInFile(filename):8 z3 P. _) ]' c( [2 Z( h( h
  17.     with open(filename) as f:
    5 [" e( ~$ j( @3 ~9 w) j
  18.         contents = f.read()
      l( j( b+ O. o* x. p
  19.         return sum(1 for match in re.finditer(words, contents))) a  r3 U2 H, n6 s5 ]9 v
  20. print(countInFile('1.txt'))
    9 O* a9 ^$ L9 B
复制代码

AP067_02_01_7152.zip

902 Bytes, 下载次数: 17, 下载积分: 财富 -1 点

第二题,例1,源代码

新大榭Python学习社区培训、Excel业务指导、办公软件定制、网站建设;新大榭探索实验室欢迎您!http://lab.daxie.net.cn/
新大榭官方公益帮帮群:6603298 官方Excel学习交流群:82064486  欢迎您加入
您需要登录后才可以回帖 登录 | 注册

本版积分规则

文字版|小黑屋|新大榭 ( 浙ICP备16018253号-1 )|点击这里给站长发消息|

GMT+8, 2026-10-11 20:15 , Processed in 0.086410 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表