CBSE 12 班|计算机科学 Python 教学大纲

原文:https://www . geesforgeks . org/cbse-class-12-计算机科学-python-教学大纲/

计算机科学 CLASS-XII(代码 083) 2019-20 学年为选修,2020-21 学年以后为必修

1。先决条件:计算机科学-Xi 级

2。学习成果:

  1. 理解函数和递归的概念。
  2. 了解如何创建和使用 Python 库。
  3. 学习文件处理。
  4. 了解算法和计算中的效率概念。
  5. 学习基本的数据结构:列表、堆栈和队列。
  6. 基本了解计算机网络:网络堆栈、基本网络硬件、基本协议和基本工具。
  7. 连接一个 Python 程序和一个 SQL 数据库,学习 SQL 中的聚合函数。
  8. 对网络道德和网络犯罪有清晰的认识。了解技术在社会中的价值、性别和残疾问题,以及生物识别 id 背后的技术。

3。标记的分布

UnitNo.  Unit Name                            Marks
1\. Programming and Computational Thinking2    30
2\. Computer Networks                           15
3\. Data Management2                           15
4\. Society, Law and Ethics2                   10
5\. Practicals                                  30
Total                                          100

4.1 单元 1:编程和计算思维(PCT-2) (80 理论+ 70 实践) Python 基础知识的修订 函数:作用域、参数传递、数据对象的可变/不可变属性、将数组传递给函数、返回值、使用库的函数:数学字符串函数。 文件处理: 打开和关闭文件,读取、写入和追加到文件, 标准输入、输出和错误流,相对和绝对路径。 使用 Python 库: 创建并导入 Python 库 递归:带递归的简单算法:阶乘斐波那契数;数组上的递归:二分搜索法 效率思想: 性能定义为与挂钟时间成反比,计算一段代码正在执行的操作数,并衡量一个程序所花费的时间。举个例子:用两个不同的程序来解决同一个问题,并且理解高效的程序是如何花费更少的时间的。 使用 Pyplot 的数据可视化: 折线图、饼图和条形图。 数据结构: 列表堆栈,队列

4.2 单元 2:计算机网络(CN) (30 个理论+ 10 个实践) 网络结构:网络类型:局域网和广域网 (web 和 internet) ,新技术如物联网公有对私有云、 有线和无线网络客户端和服务器的概念网络设备如网卡、交换机、集线器、路由器、接入点网络栈: 调幅调频无线网络中的冲突 s、检错一个 MAC 地址的概念路由的主要思想。IP 地址:( v4v6 )、 DNS 和 web URLs、 TCP:重传的基本思想存在拥塞时的速率调制(类似于道路网络)、协议:2G、3G、4G、 WiFi 是什么让协议具有更高的带宽? 基本网络工具:traceroutepingipconfig,nslookup ,whois,速测。 应用层: HTTP(基本思路)邮件工作、安全通信:加密证书(HTTPS) 、网络应用:远程桌面、远程登录、 FTP 、SCP、SSH、POP/IMAP、 SMTP 、【T77

4.3 单元 3:数据管理(DM-2) (20 个理论+ 20 个实践) 编写一个基于 Django 的最小 web 应用程序,它解析 GET 和 POST 请求,并将字段写入一个文件——平面文件和 CSV 文件。 用 SQL 数据库接口 Python SQL 命令:聚合函数–分组依据、排序依据

4.4。第四单元:社会、法律和伦理(SLE-2) (10 理论) 知识产权、剽窃、数字版权管理和许可(Creative Commons、GPL 和 Apache)、开源、开放数据、隐私。 隐私法,欺诈;网络犯罪——网络钓鱼、非法下载、儿童色情、诈骗;网络取证,信息技术法案,2000 年。 技术与社会:对技术引发的社会问题和文化变革的理解。 电子垃圾管理:废旧电子产品的妥善处置。 身份盗窃、唯一 id 和生物识别。 教授和使用计算机时的性别和残疾问题。

5。实用

| 序列号 | 单位名称 | 分(合计=30) | | 1. | 实验室测试(10 分) | | | | Python 程序(60%逻辑+ 20%文档+ 20%代码 质量) | seven | | | 向数据库发送一个 SQL 查询并显示结果的小 Python 程序。可以提供存根程序。 | three | | 2. | 报告文件+万岁(9 分) |

报告文件:至少 21 个 Python 程序。其中至少有 4 个 程序应该向数据库发送 SQL 命令, 检索结果;至少有一个程序应该实现 web 服务器将用户数据写入 CSV 文件。sevenViva voce(基于报告文件)three3.项目+万岁(11 分)项目(使用已学习的大部分概念)eightViva Voce 项目3

一些示例实验作业如下:

5.1。Python 编程:

  1. 递归求自然数的阶乘。
  2. 逐行读取文件并打印。
  3. 删除文件中包含字符“a”的所有行,并将其写入另一个文件。
  4. 写一个 Python 函数 sin(x,n)来计算 sin(x)的值,使用它的泰勒级数展开,最多 n 项。将不同 n 值的 sin(x)值与正确值进行比较
  5. 编写一个随机数生成器,生成 1 到 6 之间的随机数(模拟骰子)。
  6. 写一个递归代码,求一个列表所有元素的和。
  7. 编写递归代码计算第 n 个斐波那契数。
  8. 编写一个 Python 程序,使用列表数据结构实现堆栈和队列。
  9. 写一个递归 Python 程序,测试一个字符串是不是回文
  10. 编写一个 Python 程序,使用 pyplot 或 matplotlib 库绘制函数 y = x 2
  11. 创建一个图形应用程序,接受用户输入,对其执行一些操作,然后将输出写入屏幕。例如,写一个小计算器。使用 tkinter 库。
  12. 使用 urllib 库打开网页。
  13. 使用 numpy 或 scipy 库计算借出的 EMIs。
  14. 以 10 封网络钓鱼电子邮件为例,找出最常见的单词。

5.2。数据管理:SQL 和网络服务器

  1. 在学生成绩表中找出分数的最小值、最大值、总和和平均值。
  2. 使用 group by 查找表中每个国家/地区的客户总数(客户 ID、客户名称、国家/地区)。
  3. 编写一个 SQL 查询,按照标记的降序对(学生标识,标记)表进行排序。
  4. 通过导入 MySQL 模块将 SQL 与 Python 集成在一起
  5. 编写一个基于 Django 的 web 服务器来解析用户请求(POST),并将其写入 CSV 文件。

6。项目 班级项目的目的是创造一些有形和有用的东西。这应该以 2 到 3 名学生为一组进行,并且应该由学生在提交截止日期前至少 6 个月开始。这里的目的是找到一个真正值得解决的世界问题。鼓励学生参观当地企业,询问他们面临的问题。例如,如果企业发现很难为提交商品及服务税索赔创建发票,那么学生可以做一个项目,获取原始数据(交易列表),按类别对交易进行分组,计算商品及服务税税率,并以适当的格式创建发票。学生在这里可以非常有创造力。他们可以使用各种各样的 Python 库来创建用户友好的应用程序,例如游戏、他们学校的软件、他们残疾同学的软件以及移动应用程序,当然要做一些这样的项目,还需要一些额外的学习;这应该得到鼓励。学生应该知道如何自学。如果三个人在一个项目上工作 6 个月,至少需要 500 行代码。委员会也已经意识到这类项目的抄袭程度。老师们应该非常严格地看待这种情况,对那些在实验室作业或项目中作弊,或者使用盗版软件做同样事情的学生采取非常严格的纪律处分。所提出的一切都可以使用绝对免费、合法的开源软件来实现。