全国计算机等级考试二级python大纲

全国计算机等级考试二级python大纲
全国计算机等级考试二级python大纲

全国计算机等级考试二级Python语

言程序设计考试大纲(2018年版)一基本要求

一一1.掌握Python语言的基本语法规则三

2.掌握不少于2个基本的Python标准库三

3.掌握不少于2个Python第三方库,掌握获取并安装第三方库的方法三

4.能够阅读和分析Python程序三

5.熟练使用IDLE开发环境,能够将脚本程序转变为可执行程序三

6.了解Python计算生态在以下方面(不限于)的主要第三方库名称:网络爬虫二数据分析二数据可视化二机器学习二Web开发等三

一考试内容

一二Python语言基本语法元素

1.程序的基本语法元素:程序的格式框架二缩进二注释二变量二命名二保留字二数据类型二赋值语句二引用三

2.基本输入输出函数:input()二eval()二print()三

3.源程序的书写风格三

4.Python语言的特点三

二二基本数据类型

1.数字类型:整数类型二浮点数类型和复数类型三

2.数字类型的运算:数值运算操作符二数值运算函数三

3.字符串类型及格式化:索引二切片二基本的format()格式化方法三

4.字符串类型的操作:字符串操作符二处理函数和处理方法三

5.类型判断和类型间转换三

三二程序的控制结构

1.程序的三种控制结构三

2.程序的分支结构:单分支结构二二分支结构二多分支结构三

3.程序的循环结构:遍历循环二无限循环二break和continue循环控制三

4.程序的异常处理:try-except三

四二函数和代码复用

1.函数的定义和使用三

2.函数的参数传递:可选参数传递二参数名称传递二函数的返回值三

3.变量的作用域:局部变量和全局变量三

五二组合数据类型

1.组合数据类型的基本概念三

2.列表类型:定义二索引二切片三

3.列表类型的操作:列表的操作函数二列表的操作方法三

4.字典类型:定义二索引三

5.字典类型的操作:字典的操作函数二字典的操作方法三

六二文件和数据格式化

1.文件的使用:文件打开二读写和关闭三

2.数据组织的维度:一维数据和二维数据三

3.一维数据的处理:表示二存储和处理三

4.二维数据的处理:表示二存储和处理三

5.采用CSV格式对一二维数据文件的读写三

七二Python计算生态

1.标准库:turtle库(必选)二random库(必选)二time库(可选)三

2.基本的Python内置函数三

3.第三方库的获取和安装三

3.脚本程序转变为可执行程序的第三方库:PyInstaller库(必选)三

4.第三方库:jieba库(必选)二wordcloud库(可选)三

5.更广泛的Python计算生态,只要求了解第三方库的名称,不限于以下领域:网络爬虫二数据分析二文本处理二数据可视化二用户图形界面二机器学习二Web开发二游戏开发等三

一考试方式

一一上机考试,考试时长120分钟,满分100分三

1.题型及分值

单项选择题40分(含公共基础知识部分10分)三

操作题60分(包括基本编程题和综合编程题)三

2.考试环境

Windows7操作系统,建议Python3.4.2至Python3.5.3版本,IDLE开发环境三

利用列表辅助文件处理编程实例

《用Python玩转数据》文件处理实例 请完成以下文件综合编程迷你项目。 (1) 创建一个文件Blowing in the wind.txt,其内容是: How many roads must a man walk down Before they call him a man How many seas must a white dove sail Before she sleeps in the sand How many times must the cannon balls fly Before they're forever banned The answer my friend is blowing in the wind The answer is blowing in the wind (2) 在文件头部插入歌名“Blowin' in the wind” (3) 在歌名后插入歌手名“Bob Dylan” (4) 在文件末尾加上字符串“1962 by Warner Bros. Inc.” (5) 在屏幕上打印文件内容 参考程序见下一页

【参考程序】 # -*- coding: utf-8 -*- """ File processing @author: Dazhuang """ def insert_line(lines): lines.insert(0, "Blowin' in the wind\n") lines.insert(1, "Bob Dylan\n") lines.append("1962 by Warner Bros. Inc.") return ''.join(lines) with open('Blowing in the wind.txt', 'r+') as f: lines = f.readlines() string = insert_line(lines) print(string) f.seek(0) f.write(string)

python二级考试操作题5

p y t h o n二级考试操作 题5 https://www.360docs.net/doc/1e16898037.html,work Information Technology Company.2020YEAR

1.编写程序,从键盘上获得用户连续输入且用逗号分隔的若干个数字(不必以逗号结尾),计算所有输入数字的和并输出,给出代码提示如下。 n =input() nums =____①____ s =0 for i in nums: ____②____print(s) 输入输出示例 习题讲解 参考代码 n =input("") nums = n.split(",") s =0for i in nums: s +=eval(i)print(s) 2.编写程序,获得用户输入的数值 M 和 N,求 M 和 N 的最大公约数。提示代码如下。 def GreatCommonDivisor(a,b): if a > b: a,b = b,a r =1 while r !=0: ____①____ a = b b = r return a m =eval(input()) n =eval(input())

print(____②____) 输入输出示例 习题讲解 参考代码 def GreatCommonDivisor(a,b): if a > b: a,b = b,a r =1 while r !=0: r = a % b a = b b = r return a m =eval(input()) n =eval(input())print(GreatCommonDivisor(m,n)) 3.jieba 是一个中文分词库,一些句子可能存在多种分词结果,请补充横线处代码,产生字符串 s 可能的所有分词结果列表,提示代码如下。 ____①____ s ="世界冠军运动员的乒乓球拍卖完了" ls = jieba.lcut(____②____)print(ls) 习题讲解 参考代码 import jieba s ="世界冠军运动员的乒乓球拍买完了" ls = jieba.lcut(s,True)print(ls)

使用Python Pandas处理亿级数据_光环大数据Python培训

https://www.360docs.net/doc/1e16898037.html, 使用Python Pandas处理亿级数据_光环大数据Python培训 #玩转大数据#在数据分析领域,最热门的莫过于Python和R语言,此前有一篇文章《别老扯什么Hadoop了,你的数据根本不够大》指出:只有在超过5TB数据量的规模下,Hadoop才是一个合理的技术选择。这次拿到近亿条日志数据,千万级数据已经是关系型数据库的查询分析瓶颈,之前使用过Hadoop对大量文本进行分类,这次决定采用Python来处理数据: 硬件环境 CPU:3.5 GHz Intel Core i7 内存:32 GB HDDR 3 1600 MHz 硬盘:3 TB Fusion Drive 数据分析工具 Python:2.7.6 Pandas:0.15.0 IPython notebook:2.0.0 源数据如下表所示: Table Size Desc ServiceLogs 98,706,832 rows x 14 columns 8.77 GB 交易日志数据,每个交易会话可以有多条交易 ServiceCodes 286 rows × 8 columns 20 KB 交易分类的字典表 数据读取 启动IPython notebook,加载pylab环境:

https://www.360docs.net/doc/1e16898037.html, ipython notebook --pylab=inline Pandas提供了IO工具可以将大文件分块读取,测试了一下性能,完整加载 9800万条数据也只需要263秒左右,还是相当不错了。 import pandas as pdreader = pd.read_csv('data/servicelogs', iterator=True)try: df = reader.get_chunk(100000000)except StopIteration: print "Iteration is stopped." 1百万条 1千万条 1亿条 ServiceLogs 1 s 17 s 263 s 使用不同分块大小来读取再调用pandas.concat 连接DataFrame,chunkSize设置在1000万条左右速度优化比较明显。 loop = TruechunkSize = 100000chunks = []while loop: try: chunk = reader.get_chunk(chunkSize) chunks.append(chunk) except StopIteration: loop = False print "Iteration is stopped."df = pd.concat(chunks, ignore_index=True) 下面是统计数据,Read Time是数据读取时间,Total Time是读取和Pandas 进行concat操作的时间,根据数据总量来看,对5~50个DataFrame对象进行合 并,性能表现比较好。 Chunk Size Read Time (s) Total Time (s) Performance 100,000 224.418173 261.358521 200,000 232.076794 256.674154 1,000,000 213.128481 234.934142 √√ 2,000,000 208.410618 230.006299 √√√ 5,000,000 209.460829 230.939319 √√√ 10,000,000 207.082081 228.135672 √√ √√ 20,000,000 209.628596 230.775713 √√√ 50,000,000 222.910643 242.405967 100,000,000 263.574246 263.574246

python二级考试试题4

1. 以下选项中,不属于需求分析阶段的任务是 A 需求规格说明书评审 B 确定软件系统的性能需求 C 确定软件系统的功能需求 D 制定软件集成测试计划
正确答案:
2. 关于数据流图(DFD)的描述,以下选项中正确的 是 A 软件详细设计的工具 B 结构化方法的需求分析工具 C 面向对象需求分析工具 D

软件概要设计的工具
正确答案:
3. 在黑盒测试方法中,设计测试用例的主要根据是 A 程序流程图 B 程序数据结构 C 程序内部逻辑 D 程序外部功能
正确答案:
4. 一个教师讲授多门课程,一门课程由多个教师讲 授。描述了实体教师和课程的联系的选项是 A m : n 联系 B m : 1 联系

C 1 : n 联系 D 1 : 1 联系
正确答案:
5. 数据库设计中,反映用户对数据要求的模式是 A 内模式 B 设计模式 C 外模式 D 概念模式
正确答案:
6. 在数据库设计中,用 E-R 图来描述信息结构但不涉 及信息在计算机中的表示的阶段是

A 概念设计阶段 B 逻辑设计阶段 C 物理设计阶段 D 需求分析阶段
正确答案:
7. 以下选项中描述正确的是 A 只有一个根结点的数据结构不一定是线性结构 B 循环链表是非线性结构 C 双向链表是非线性结构 D 有一个以上根结点的数据结构不一定是非线性结构
正确答案:

8. 一棵二叉树共有 25 个结点,其中 5 个是叶子结点, 则度为 1 的结点数是 A 6 B 16 C 10 D 4 正确答案:
9. 下图所示的二叉树进行前序遍历的序列是
A

python二级考试试题

Python语言是一种脚本编程语言 汇编语言是直接操作计算机硬件的编程语言 程序设计语言经历了机器语言、汇编语言、脚本语言三个阶段 false False true True del

pass not ‘500/10’ 500/10 50 None

6, 2 6 2 str.replace(x,y)方法把字符串str中所有的x子串都替换成y 想把一个字符串str所有的字符都大写,用str.upper() 想获取字符串str的长度,用字符串处理函数 str.len() 设 x = ’aa’,则执行x*3的结果是‘aaaaaa’ 正确答案:C

print(str[0].upper()+str[1:]) print(str[1].upper()+str[-1:1]) print(str[0].upper()+str[1:-1]) 循环框 连接点 判断框 遍历循环使用for <循环变量> in <循环结构>语句,其中循环结构不能是文件

使用range()函数可以指定for循环的次数 for i in range(5)表示循环5次,i的值是从0到4 用字符串做循环结构的时候,循环的次数是字符串的长度正确答案:A 11. 执行以下程序,输入”93python22”,输出结果是: w = input(‘请输入数字和字母构成的字符串:’) for x in w: if '0'<= x <= '9': continue else: w.replace(x,'') python9322 python 93python22 9322 正确答案:C

Python财经数据GUI项目实例

《用Python玩转数据》财经数据GUI项目 Dazhuang@NJU 尝试实现7.8中所述的项目 【参考代码见下一页】 PS:包含两个文件:my_finance.py和dji_wxPython.py

# -*- coding: utf-8 -*- """ get DJI data @author: Dazhuang """ import json import re import requests def retrieve_dji_list(): try: r = requests.get('https://www.360docs.net/doc/1e16898037.html,/data/dow30/') except ConnectionError as err: print(err) search_pattern = https://www.360docs.net/doc/1e16898037.html,pile('class="wsod_symbol">(.*?)<\/a>.*(.*?)<\/span>.*\n.*class="wsod_stream ">(.*?)<\/span>') dji_list_in_text = re.findall(search_pattern, r.text) dji_list = [] for item in dji_list_in_text: dji_list.append({'code': item[0], 'name': item[1], 'price': float(item[2])}) return dji_list def retrieve_quotes_historical(stock_code, start = '', end = ''): quotes = [] url = 'https://https://www.360docs.net/doc/1e16898037.html,/quote/%s/history?p=%s' % (stock_code, stock_code) try: r = requests.get(url) except ConnectionError as err: print(err) m = re.findall('"HistoricalPriceStore":{"prices":(.*?),"isPending"', r.text) if m: quotes = json.loads(m[0]) quotes = quotes[::-1] return [item for item in quotes if not 'type' in item]

python二级考试试题2

1.关于算法的描述,以下选项中错误的是 算法具有可行性、确定性、有穷性的基本特征 算法的复杂度主要包括时间复杂度和数据复杂度 算法的基本要素包括数据对象的运算和操作及算法的控制结构 算法是指解题方案的准确而完整的描述 正确答案: 2.关于数据结构的描述,以下选项中正确的是 数据的存储结构是指反映数据元素之间逻辑关系的数据结构 数据的逻辑结构有顺序、链接、索引等存储方式 数据结构不可以直观地用图形表示 数据结构指相互有关联的数据元素的集合

正确答案: 3.在深度为7的满二叉树中,结点个数总共是 64 127 63 32 正确答案: B 4.对长度为n的线性表进行顺序查找,在最坏的情况下所需要的比较次数是 n×(n+1) n-1 n

n+1 正确答案: 5.关于结构化程序设计方法原则的描述,以下选项中错误的是 逐步求精 多态继承 模块化 自顶向下 正确答案: 自顶向下 程序设计时,应先考虑总体,后考虑细节;先考虑全局目标,后考虑局部目标。不要一开始就过多追求众多的细节,先从最上层总目标开始设计,逐步使问题具体化。 逐步细化 对复杂问题,应设计一些子目标作为过渡,逐步细化。 模块化设计 一个复杂问题,肯定是由若干稍简单的问题构成。模块化是把程序要解决的总目标分解为子目标,再进一步分解为具体的小目标,把每一个小目标称为一个模块。

6.与信息隐蔽的概念直接相关的概念是 模块独立性 模块类型划分 模块耦合度 软件结构定义 正确答案: 7.关于软件工程的描述,以下选项中描述正确的是 软件工程包括3要素:结构化、模块化、面向对象 软件工程工具是完成软件工程项目的技术手段 软件工程方法支持软件的开发、管理、文档生成

Python玩转股票数据以及简单交易策略

Python 玩转股票数据以及简单交易策略前面的文档《Python获取股票历史数据并分析》详细说明如何获取股票数据,并进行了简单的分布分析。今天我们将详细讲解如何玩转历史数据,基础数据来源于《Python获取股票历史数据并分析》。为了取数和查询方便,我把所有的历史交易数据放在了sqlite3数据库文件中,这也是python自带的数据库,操作很方便。当然你也可以把数据放在其他数据库中。本文将使用Python来可视化股票数据,比如绘制K线图,并且探究各项指标的含义和关系,最后使用移动平均线方法初探投资策略。下面开始玩转数据, 数据导入 为了数据的存储和读取方便,我们预先把历史数据存在路径为'E:\myprog\TestData.db的sqlite文件中。要分析先从这个数据文件中读取。

我们把股票编码为600866的2017-02-01至2017-06-01的交易数据读取到stdata中。 以上显示了前9行数据,要得到数据的更多信息,可以使用.info()方法。它告诉我们该数据一共有72行,索引是时间格式,日期从2017-02-01至2017-06-01。总共有16列,并列出了每一列的名称和数据格式,并且没有缺失值。 除了index,code是object类型外,其他的都是float型。我们可以将index转化为datetime类型 stdata.index= pd.to_datetime(stdata.index) 变化后如下:

至此,我们完成了股票数据的导入和清洗工作,接下来将使用可视化的方法来观察这些数据。 数据观察 首先,我们观察数据的列名,其含义对应如下: 这些指标总体可分为两类: ●价格相关指标 ?当日价格:开盘、收盘价,最高、最低价 ?价格变化:价格变动和涨跌幅 ?均价:5、10、20日均价 ●成交量相关指标 ?成交量 ?换手率:成交量/发行总股数×100% ?成交量均量:5、10、20日均量 由于这些指标都是随时间变化的,所以让我们先来观察它们的时间序列图。 时间序列图 以时间为横坐标,每日的收盘价为纵坐标,做折线图,可以观察股价随时间的波动情况。这里直接使用DataFrame数据格式自带的做图工具,其优点是能够快速做图,并自动优化图形输出形式。 stdata[['close','turnover']].plot(figsize=(33,8),secondary_y='close',grid=True)

用python玩转数据-实验2

实验2 选择、循环和异常 注意: 1.作业请提交至ftp://17 2.26.184.2/upload/用Python玩转数据/实验2(2017. 3.23)/中 2.Deadline为 3.28(下周二)18:00 3.请将4个源文件压缩后用“学号姓名.压缩类型”文件名上传 编程题 1.按公式:C= 5/9×(F-32) ,将华氏温度转换成摄氏温度,并产生一张华氏0~300度与对应的摄氏温度之间的对照表(每隔20度输出一次) 2. 找前5个默尼森数。P是素数且M也是素数,并且满足等式M=2P-1,则称M为默尼森数。例如,P=5,M=2P-1=31,5和31都是素数,因此31是默尼森数。 3. 编写一个程序,让用户输入苹果个数和单价,然后计算出价格总额。 Enter count: 10 Enter price for each one: 3.5 Pay: 35 运用try-except语句让程序可以处理非数字输入的情况,如果是非数字输入,打印消息并允许用户再次输入,直到输入正确类型值计算出结果后退出。以下是程序的执行结果:Enter count: 20 Enter price for each one: four Error, please enter numeric one Enter count: twenty Error, please enter numeric one Enter count: 20 Enter price for each one: 4 The price is 80. 4. 程序随机产生一个0~300间的整数,玩家竞猜,允许玩家自己控制游戏次数,如果猜中系统给出提示并退出程序,如果猜错给出“太大了”或“太小了”的提示,如果不想继续玩可以退出并说再见。

全国计算机等级考试二级Python真题及解析(9)

全国计算机等级考试二级Python真题及解析( 9) 1.下面不属于软件工程的 3 个要素的是 ___________。 A过程 B方法 C环境 D工具 正确答案: C 2.下面不属于软件设计原则的是 ___________。 A模块化 B自底向上 C信息隐蔽 D抽象 正确答案: B 3.在关系数据库中,用来表示实体之间联系的是 ___________。 A网结构 B二维表 C线性表 D树结构 正确答案: B 4.一般情况下,当对关系 R 和 S 进行自然连接时,要求 R 和 S 含有一个或者多个共有的 ___________。 A属性 B元组 C记录 D行

正确答案: A 5.有表示公司和职员及工作的三张表,职员可在多家公司兼职。其中公司 c(公司号,公司名,地址,注册资本,法人代表,员工数),职员s(职员号,姓名,性别,年龄,学历),工作w(公司号,职员号,工资),则表w 的键(码)为 ___________。 A公司号,职员号,工资 B职员号 C职员号,工资 D公司号,职员号 正确答案: D 6. 下列叙述中正确的是 ___________。 A栈是一种先进先出的线性表 B栈与队列都是非线性结构 C队列是一种后进先出的线性表 D栈与队列都是线性结构 正确答案: D 7. 下列叙述中正确的是 ___________。 A线性表的链式存储结构所需要的存储空间一般要少于顺序存储结构 B线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构 C线性表的链式存储结构与顺序存储结构所需要的存储方式是相同的 D线性表的链式存储结构与顺序存储结构所需要的存储空间是相同的 正确答案: B 8. 算法的有穷性是指 ___________。 A算法只能被有限的用户使用 B算法程序所处理的数据量是有限的 C算法程序的运行时间是有限的

全国计算机等级考试二级Python真题及解析(5)

全国计算机等级考试二级Python真题及解析(5) 一、选择题 1. 关于二叉树的遍历,以下选项中描述错误的是 A二叉树的遍历可以分为三种:前序遍历、中序遍历、后序遍历 B前序遍历是先遍历左子树,然后访问根结点,最后遍历右子树 C后序遍历二叉树的过程是一个递归的过程 D二叉树的遍历是指不重复地访问二叉树中的所有结点 正确答案: B 2. 关于二叉树的描述,以下选项中错误的是 A二叉树具有两个特点:非空二叉树只有一个根结点;每一个结点最多有两棵子树,且分别称为该结点的左子树与右子树 B在任意一棵二叉树中,度为0的结点(叶子结点)比度为2的结点多一个 C深度为m的二叉树最多有2的m次幂个结点 D二叉树是一种非线性结构 正确答案: C 3. 关于查找技术的描述,以下选项中错误的是 A如果采用链式存储结构的有序线性表,只能用顺序查找 B二分查找只适用于顺序存储的有序表 C顺序查找的效率很高 D查找是指在一个给定的数据结构中查找某个特定的元素 正确答案: C 4. 关于排序技术的描述,以下选项中错误的是 A选择排序法在最坏的情况下需要比较n(n–1)/2次 B快速排序法比冒泡排序法的速度快

C冒泡排序法是通过相邻数据元素的交换逐步将线性表变成有序 D简单插入排序在最坏的情况下需要比较n的1.5幂次 正确答案: D 5. 关于面向对象的程序设计,以下选项中描述错误的是 A面向对象方法可重用性好 B Python 3.x 解释器内部采用完全面向对象的方式实现 C用面向对象方法开发的软件不容易理解 D面向对象方法与人类习惯的思维方法一致 正确答案: C 6. 在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是 A需求设计 B详细设计 C可行性分析 D概要设计 正确答案: A 7. 以下选项中,用于检测软件产品是否符合需求定义的是 A集成测试 B验证测试 C验收测试 D确认测试 正确答案: C 8. 在PFD图中用箭头表示 A数据流 B调用关系 C组成关系

python高级数据处理与可视化

Python 高级数据 与 Advanced Data Processing and Visualization of Python 可视化 Department of Computer Science and Technology Department of University Basic Computer Teaching 处理

用Python玩转数据聚类分析

聚类 3 ?聚类分析(cluster analysis) 以相似性为基础把相似的对象通过静态分类的方法分成不同的组别或者更多的子集–特性 ?基于相似性 ?有多个聚类中心

K-MEANS K-均值算法表示以空间中k 个点为中心进行聚类,对最靠近他们的对象归类。 A 任意选择k 个 对象作为初始 聚类中心 C 计算每个新聚类的聚类中心 B 对每个点确定其聚类中心点 D 聚类完成 不收敛 收敛 4

一个日常小例子高数英语Python 音乐 小明88 64 96 85 大明92 99 95 94 小朋91 87 99 95 大朋78 99 97 81 小萌88 78 98 84 大萌100 95 100 92 # Filename: kmeansStu.py from pylab import * from scipy.cluster.vq import * list1 = [88,74,96,85] list2 = [92,99,95,94] list3 = [91,87,99,95] list4 = [78,99,97,81] list5 = [88,78,98,84] list6 = [100,95,100,92] data = vstack((list1,list2,list3,list4,list5,list6)) centroids,_ = kmeans(data,2) result,_= vq(data,centroids) print result F ile Output: [0 1 1 1 0 1] 5 scipy.cluster.vq更新后其参数只支持float和double,所以此处的数字都要+.0改成浮点数形式

python二级考试试题

1.数据库系统的核心是___________。 数据库管理系统 数据模型 软件工具 数据库 正确答案: A 2.下列叙述中正确的是___________。 线性表链式存储结构的存储空间可以是连续的,也可以是不连续的 线性表链式存储结构与顺序存储结构的存储空间都是连续的 线性表链式存储结构的存储空间必须是连续的

线性表链式存储结构的存储空间一般要少于顺序存储结构 正确答案: A 3.某二叉树共有12个结点,其中叶子结点只有1个。则该二叉树的深度为(根结点在第1层) ___________。 8 12 6 3 正确答案: B 4.下列叙述正确的是___________。

算法的时间复杂度与空间复杂度一定相关 数据的逻辑结构与存储结构是一一对应的 算法的时间复杂度是指执行算法所需要的计算工作量 算法的效率只与问题的规模有关,而与数据的存储结构无关 正确答案: C 5.对长度为n的线性表作快速排序,在最坏情况下,比较次数为___________。 n(n-1)/2 n(n-1) n-1 n

正确答案: A 6.在软件开发中,需求分析阶段产生的主要文档是___________。 软件需求规格说明书 软件集成测试计划 软件详细设计说明书 用户手册 正确答案: A 7.下列选项中不属于结构化程序设计原则的是 ___________。 逐步求精 逐步求精

模块化 可封装 正确答案: D 8.设有表示学生选课的三张表,学生S(学号,姓名,性别,年龄,身份证号),课程C(课号,课名),选课SC(学号,课号,成绩),则表SC的关键字(键或码)为 学号,课号 学号,成绩 课号,成绩 学号,姓名,成绩 正确答案: A

python二级考试试题8

1. 数据库设计中反映用户对数据要求的模式是 ___________。 A 概念模式 B 内模式 C 设计模式 D 外模式
正确答案:
2. 一个工作人员可使用多台计算机,而一台计算机被 多个人使用,则实体工作人员与实体计算机之间的联 系是___________。 A 多对一 B 多对多 C

一对一 D 一对多
正确答案:
3. 软件生命周期是指___________。 A 软件的运行维护过程 B 软件从需求分析、设计、实现到测试完成的过程 C 软件产品从提出、实现、使用维护到停止使用退役的 过程 D 软件的开发过程
正确答案:
4. 软件测试的目的是___________。 A 改正程序中的错误

B 发现并改正程序中的错误 C 评估软件可靠性 D 发现程序中的错误
正确答案:
5. 面向对象方法中,继承是指___________。 A 类之间共享属性和操作的机制 B 各对象之间的共同性质 C 一组对象所具有的相似性质 D 一个对象具有另一个对象的性质
正确答案:

6. 层次型、网状型和关系型数据库划分原则是 ___________。 A 数据之间的联系方式 B 文件的大小 C 记录长度 D 联系的复杂程度
正确答案:
7. 下列数据结构中,能够按照"先进后出"原则存取数 据的是___________。 A 栈 B 二叉树 C 队列

D 循环队列
正确答案:
8. 下列数据结构中,属于非线性结构的是 ___________。 A 二叉树 B 带链栈 C 队列循环 D 带链队列
正确答案:
9. 下列叙述中正确的是___________。 A 有序线性表既可以采用顺序存储结构,也可以采用链 式存储结构

Python数据获取与表示基础编程练习

数据获取与表示基础编程练习 《用Python玩转数据》by Dazhuang@NJU Python中便捷高效的数据结构例如序列可以很好地用来解决问题,下面几个例子大家可以用来练手,难度不低,参考代码仅供参考,可以有很多写法,继续Fighting ^_^ 1. 从键盘输入整数n(1-9之间),对于1-100之间的整数删除包含n并且能被n整除的数,例如如果n为6,则要删掉包含6的如6,16这样的数及是6的倍数的如12和18这样的数,输出所有满足条件的数,要求每满10个数换行。 测试数据: Enter the number: 6 屏幕输出: 1,2,3,4,5,7,8,9,10,11 13,14,15,17,19,20,21,22,23,25 27,28,29,31,32,33,34,35,37,38 39,40,41,43,44,45,47,49,50,51 52,53,55,57,58,59,70,71,73,74 75,77,79,80,81,82,83,85,87,88 89,91,92,93,94,95,97,98,99,100 2. 请用随机函数产生500行1-100之间的随机整数存入文件random.txt中,编程寻找这些整数的众数并输出,众数即为一组数中出现最多的数。 3. 文件article.txt中存放了一篇英文文章(请自行创建并添加测试文本),假设文章中的标点符号仅包括“,”、“.”、“!”、“?”和“…”,编程找出其中最长的单词并输出。 【参考代码】 1. #-*-coding:utf-8-*- """ @author: Dazhuang """ n = int(input("Enter the number: ")) count = 0 new_str = '' print("The result string: ") for i in range(101): s = str(i) if i % n != 0 and s.find(str(n)) == -1: new_str = new_str + s + ','

python二级考试操作题

描述 参照代码模板完善代码,实现下述功能。输入一个字符串,其中的字符由(英文)逗号隔开,编程将所有字符连成一个字符串,输出显示在屏幕上。 输入输出示例 答案: 要点: 1. 题目要求输入的字符用逗号隔开,所以,需要用到split(',')来从字符串里提取所输入的字符 2. 经过split()函数的字符串,返回的是列表 3. 字符串有个操作函数是(ls),可以把列表里的各个元素,用str的内容连接起来。本题利用了空字符串‘’,来调用这个函数,因此,达到了所想要的效果:将带有逗号的字符串变换成了没有逗号的字符串。

4. 有一个不可忽视的地方是join()函数的括号里的参数是列表,如果忘了这一点,会犯错 5. 这个功能利用好了,可以拓展,解决其他的问题。 描述 参照代码模板完善代码,实现下述功能。 有一个列表 studs 如下: studs=[{'sid':'103','Chinese': 90,'Math':95,'English':92},{'sid':'101','Chinese': 80,'Math':85,'English':82},{'sid':'102','Chinese':70,'Math':75,'English':72}]将列表 studs 的数据内容提取出来,放到一个字典 scores 里,在屏幕上按学号从小到大的顺序显示输出 scores 的内容。内容示例如下: 101:[85, 82, 80] 102:[75, 72, 70] 103:[95, 92, 90] 输入输出示例

答案: studs=[{'sid':'103','Chinese': 90,'Math':95,'English':92},{'sid':'101','Chinese': 80,'Math':85,'English':82},{'sid':'102','Chinese':70,'Math':75,'English':72}] scores ={} for stud in studs: sv =() v =[] for it in sv: if it[0]=='sid': k = it[1] else: (it[1]) scores[k]= v # print(scores) so =list()) (key =lambda x:x[0],reverse =False) for l in so: print('{}:{}'.format(l[0],l[1])) studs= [{'sid':'103','Chinese': 90,'Math':95,'English':92},{'sid':'101','Chinese': 80,'Math':85,'English':82},{'sid':'102','Chinese': 70,'Math':75,'English':72}]

用Python做数据分析必知的语法和函数整理

用一张示意图表示Python变量和赋值的重点: 例如下图代码,“=”的作用就是赋值,同时Python会自动识别数据类型:整型数据 整型数据 字符串数据 字符串数据

字典使用键-值(key-value)存储,无序,具有极快的查找速度。以上面的字典为例,想要快速知道周杰伦的年龄,就可以这么写: zidian['周杰伦'] >>>'40' dict内部存放的顺序和key放入的顺序是没有关系的,也就是说,"章泽天"并非是在"刘强东"的后面。 DataFrame: DataFrame可以简单理解为Excel里的表格格式。导入pandas包后,字典和列表都可以转化为DataFrame,以上面的字典为例,转化为DataFrame是这样的: import pandas as pd df=pd.DataFrame.from_dict(zidian,orient='index',columns=['age'])#注意DataFrame的D和F是大写df=df.reset_index().rename(columns={'index':'name'})#给姓名加上字段名 和excel一样,DataFrame的任何一列或任何一行都可以单独选出进行分析。 以上三种数据类型是python数据分析中用的最多的类型,基础语法到此结束,接下来就可以着手写一些函数计算数据了。

2.从Python爬虫学循环函数 掌握了以上基本语法概念,我们就足以开始学习一些有趣的函数。我们以爬虫中绕不开的遍历url为例,讲讲大家最难理解的循环函数for的用法: A.for函数 for函数是一个常见的循环函数,先从简单代码理解for函数的用途: zidian={'刘强东':'46','章泽天':'36','周杰伦':'40','昆凌':'26'} for key in zidian: print(key) >>> 刘强东 章泽天 周杰伦 昆凌 因为dict的存储不是按照list的方式顺序排列,所以,迭代出的结果顺序很可能不是每次都一样。默认情况下,dict迭代的是key。如果要迭代value,可以用for value in d.values(),如果要同时#迭代key和value,可以用for k, v in d.items() 可以看到,字典里的人名被一一打印出来了。for 函数的作用就是用于遍历数据。掌握for函数,可以说是真正入门了Python函数。 B.爬虫和循环 for函数在书写Python爬虫中经常被应用,因为爬虫经常需要遍历每一个网页,以获取信息,所以构建完整而正确的网页链接十分关键。以某票房数据网为例,他的网站信息长这样:

python二级考试试题

栈 双向链表 二叉树 队列 正确答案: A 2.以下选项的叙述中,正确的是 在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况 在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况 循环队列中元素的个数是由队头指针和队尾指针共同决定

循环队列有队头和队尾两个指针,因此,循环队列是非线性结构 正确答案: C 3.关于数据的逻辑结构,以下选项中描述正确的是 数据所占的存储空间量 数据在计算机中的顺序存储方式 数据的逻辑结构是反映数据元素之间逻辑关系的数据结构 存储在外存中的数据 正确答案: C 4.以下选项中,不属于结构化程序设计方法的是 逐步求精

模块化 可封装 自顶向下 正确答案: C 5.以下选项中,不属于软件生命周期中开发阶段任务的是 概要设计 软件维护 详细设计 软件测试 正确答案: B

6.为了使模块尽可能独立,以下选项中描述正确的是 模块的内聚程度要尽量高,且各模块间的耦合程度要尽量弱 模块的内聚程度要尽量低,且各模块间的耦合程度要尽量弱 模块的内聚程度要尽量低,且各模块间的耦合程度要尽量强 模块的内聚程度要尽量高,且各模块间的耦合程度要尽量强 正确答案: A 7.以下选项中叙述正确的是 软件一旦交付就不需要再进行维护

软件交付使用后其生命周期就结束 软件维护指修复程序中被破坏的指令 软件交付使用后还需要进行维护 正确答案: D 8.数据独立性是数据库技术的重要特点之一,关于数据独立性,以下选项中描述正确的是 不同数据被存放在不同的文件中 不同数据只能被对应的应用程序所使用 以上三种说法都不对 数据与程序独立存放 正确答案: C 9.以下选项中,数据库系统的核心是

python文件读取

演练0002:文件读取 案例1:使用csv.reader读取csv文件 In [1]: import numpy as np import csv csv_file_path = 'data/house_price.csv' file = open(csv_file_path) reader = csv.reader(file) text = list(reader) print('列标题:') titles = text[0] for title in titles: print(title) print('数据值(字符串形式):') data = text[1:] print(type(data)) # data是一个list而不是array print(data) print('数据值(转换成数值形式):') rows = len(data) # 数据的行数 cols = len(data[0]) # 数据的列数 values = np.empty((rows cols)) # 定义一个array存放data中的数值数据 for i in range(rows): for j in range(cols): values[i j] = (float)(data[i][j]) print(values) file.close() 列标题: Area Rooms Price 数据值(字符串形式): [['2104' '3' '399900'] ['1600' '3' '329900'] ['2400' '3' '369000'] ['1416' '2' '232000']] 数据值(转换成数值形式): [[2.104e+03 3.000e+00 3.999e+05] [1.600e+03 3.000e+00 3.299e+05] [2.400e+03 3.000e+00 3.690e+05] [1.416e+03 2.000e+00 2.320e+05]] 案例2:使用np.loadtxt读取csv文件 In [2]: import numpy as np csv_file_path = 'data/house_price.csv' data = np.loadtxt(open(csv_file_path 'r') delimiter=""skiprows=1)

PythonScikit-learn经典机器学习经典入门项目开发

《用Python玩转数据》之scikit-learn机器学习经典入门 项目 by Dazhuang@NJU scikit-learn是基于NumPy、SciPy和Matplotlib的著名的Python机器学习包,里面包含了大量经典机器学习的数据集和算法实现,请基于经典的鸢尾花数据集iris实现简单的分类和聚类功能。 1.鸢尾花数据集(iris)简介 通过如下语句可获得iris数据集(通过dir(datasets)查看数据集,例如可用datasets.load_diabetes()获得一个糖尿病病人的数据) >>> from sklearn import datasets >>> iris = datasets.load_iris() # 数据存储在.data属性中 >>> iris.data # 数据中包含150朵鸢尾花的尺寸观测数据,每条包含萼片长度(sepal length (cm))、萼片宽度(sepal width (cm))、花瓣长度(petal length (cm))、花瓣宽度(petal width (cm))这4个特征值(属性)名,打印“iris”可看到相应的特征值名 >>> iris.data.shape (150, 4) # 数据所属种类保存在.target属性中,共有3类,分别是山鸢尾(setosa),变色鸢尾('versicolor),弗吉尼亚鸢尾(virginica),每一类各50条记录,打印“iris”可查看>>> iris.target array([0, 0, 0, ..., 2, 2, 2]) 2.请参考scikit-learn官网(https://www.360docs.net/doc/1e16898037.html,)或本周课程中的代码或其他资源尝 试用经典的分类学习算法KNN最近邻(k-nearest neighbor ,最简单的分类算法,新的观测值的标签由n维空间中最靠近它的训练样本标签确定)判断萼片长度和宽度、花瓣长度和宽度分别是5.0cm, 3.0cm, 5.0cm, 2.0cm的鸢尾花所属类别。 3.请参考scikit-learn官网或本周课程中的代码或其他资源尝试用k-means聚类算法对 原始数据进行聚类(3类)并观察聚类的正确率(注意,类别用0,1,2表示,但并不限定表示某一类)。 【参考代码见下一页】

相关文档
最新文档