目录

  • 1 第0单元 基础知识导学
    • 1.1 认识计算机和程序
    • 1.2 认识Python
  • 2 第1单元 顺序:使用海龟绘图画太极图
    • 2.1 单元导学
    • 2.2 【任务概述】
      • 2.2.1 任务分析
      • 2.2.2 任务准备
    • 2.3 任务1 使用顺序语句画太极图
    • 2.4 任务2 使用变量控制填涂颜色和画笔粗细
    • 2.5 【单元小结】
    • 2.6 【随堂练习】
  • 3 第2单元 数字与字符串:打印计算机信息图卡
    • 3.1 单元导学
    • 3.2 【任务概述】
      • 3.2.1 任务分析
      • 3.2.2 任务准备
    • 3.3 任务1 使用数字表示计算机性能指标
    • 3.4 任务2 使用字符串格式化图卡信息
    • 3.5 任务3 打印信息图卡的时间戳
    • 3.6 【单元小结】
    • 3.7 【随堂练习】
  • 4 第3单元 循环:使用海龟绘图画五角星
    • 4.1 单元导学
    • 4.2 【任务概述】
      • 4.2.1 任务分析
      • 4.2.2 任务准备
    • 4.3 任务1-1 使用for循环画矩形及竖辅助线
    • 4.4 任务1-2 使用while循环画矩形横辅助线
    • 4.5 任务2 使用循环语句画五角星
    • 4.6 任务3 学习嵌套循环语句
    • 4.7 【单元小结】
    • 4.8 【随堂练习】
  • 5 第4单元 分支:恺撒密码加解密信息
    • 5.1 单元导学
    • 5.2 【任务概述】
      • 5.2.1 任务分析
      • 5.2.2 任务准备
    • 5.3 任务1 使用分支程序结构打印ASCII表
    • 5.4 任务2 使用嵌套分支语句加解密信息
    • 5.5 【单元小结】
    • 5.6 【随堂练习】
  • 6 第5单元 列表和元组:绘制CPC历史决议词云图
    • 6.1 单元导学
    • 6.2 【任务概述】
      • 6.2.1 任务分析
      • 6.2.2 任务准备
    • 6.3 任务1 读取历史决议文件数据
    • 6.4 任务2 提取分词后的关键词列表
    • 6.5 任务3 统计分词关键词出现频次
    • 6.6 任务4 排序关键词并绘制词云图
    • 6.7 任务5 学习复制和清空列表
    • 6.8 任务6 使用元组改写关键词统计
    • 6.9 【单元小结】
    • 6.10 【随堂练习】
  • 7 第6单元 字典和集合:绘制人口普查数据图表
    • 7.1 单元导学
    • 7.2 【任务概述】
      • 7.2.1 任务分析
      • 7.2.2 任务准备
    • 7.3 任务1 使用字典存储人口数据
    • 7.4 任务2 遍历并排序全国人口数据字典值
    • 7.5 任务3 创建全国人口数柱状图
    • 7.6 任务4 创建地区人口分布地图
    • 7.7 任务5 学习集合数据类型
    • 7.8 【单元小结】
    • 7.9 【随堂练习】
  • 8 第7单元 函数:获取照片拍摄地址信息
    • 8.1 单元导学
    • 8.2 【任务概述】
      • 8.2.1 任务分析
      • 8.2.2 任务准备
    • 8.3 任务1 使用函数复用代码
    • 8.4 任务2 使用位置参数获取照片经纬度
    • 8.5 任务3 使用关键字参数查询地址信息
    • 8.6 任务4 使用默认值参数查询地址信息
    • 8.7 任务5 使用不定长参数查询地址信息
    • 8.8 【单元小结】
    • 8.9 【随堂练习】
  • 9 第9单元  OOP:采集网络图书数据
    • 9.1 单元导学
    • 9.2 【任务概述】
      • 9.2.1 任务分析
      • 9.2.2 任务准备
    • 9.3 任务1 初步认识类和对象
    • 9.4 任务2 编写爬虫基类
    • 9.5 任务3 检索并爬取当当网图书
    • 9.6 任务4 检索并爬取豆瓣网图书
    • 9.7 【单元小结】
    • 9.8 【随堂练习】
  • 10 附录1:搭建Python开发环境
    • 10.1 安装Python解释器
    • 10.2 安装、配置Visual Studio Code
    • 10.3 VS Code中编写hello world
【任务概述】
  • 1 单元成果
  • 2 觅知

【成果产出】恺撒密码

密码是指采用特定变换的方法对信息等进行加密保护、安全认证的技术、产品和服务,密码主要是用来加密保护信息和进行安全认证,密码在网络空间中主要应用于身份识别、安全隔离、完整性保护、信息加密和抗抵赖性等方面,具有不可替代的重要作用。提升安全意识、保护个人账户密码安全是每个人的必修课,2020年1月1日起《中华人民共和国密码法》式实施,维护国家安全与每位公民息息相关,我们每个人都应当增强自身安全保密意识,提高维护国家网络安全的能力和水平。

恺撒密码(Caesar Cipher)是一种最简单且最广为人知的加密技术,虽然用现代技术很容易将密文进行破解,但对于后续替代加密算法影响深远。恺撒大帝是罗马帝国的奠基人,他是一名杰出的政治家、军事家,他曾用此方法对重要的军事信息进行加密。恺撒密码是典型的对称加密算法,是一种替换加密(shift cipher)的技术,明文中的所有字母都在字母表上向后(或向前)按照一个固定数目(key)进行偏移后被替换成密文。

本单元我们将使用恺撒密码对唐代诗人王之涣的一首诗《登鹳雀楼》中的两句诗:“欲穷千里目,更上一层楼”的英文版进行加解密,选用的英文翻译版为:“You will enjoy grander sight, by climbing to a greater height.”其中包括了大小写字母、空格和标点符号,为了简化演示,对空格和标点符号不需要处理。


凯撒密码非常容易设计,那我们怎么样在电脑上编写程序来实现了?计算机可以用ASCII来表示字符,借助ASCII表,可以方便的编写计算机程序来实现凯撒密码的移位加解密。为此,在正式开始使用恺撒密码加解密诗句之前,我们先完成打印ASCII表的任务,如下图所示。需要注意的是,凯撒密码非常容易破解,是很不安全的密码。



【视频导学】