当前位置:   article > 正文

e记法 python 底数_备战python二级

d.get(“ 地”, “黄 ”)

明天考试去,滚吧

提醒与分值:1*40(选择)+5*3(填空)+10+15+20
比如今年的一个题目是要求随机抽一个手机品牌,这道题目的关键点在于你要使用seed()函数覆盖原来的给定的种子seed(1),因为要求“随机”,假如你只用了random,结果是不会随机的,因为seed(1)这个种子控制了random必然出现的是同一个结果,所以自己为了保险起见,可以自己多调试几次;再来说说4-5题是简单应用题,这2个题目也不难,比如就是分段函数用if等待,或者是turtle画图的函数,这些只要搞清楚,turtle画图的角度,长度,画笔等等基本都没问题。
可以说,最难的是最后一道题目,要想获得优秀或者及格,这道题目基本奠定了整体,只要你这道题没做出来,估计前面再错的比较多,那就有点危险了;好了,再说说这道题是怎么出的,一般是分词或者是排序,或者是整理数据,文件io之类的,这种题目需要比较扎实的基础,如果想要优秀,毋庸置疑,这道题目必须做对;一般情况下,题目会给出基本的代码框架,一般的这道题目是可以修改代码的(按照自己的思路,当然具体要求还是要看题目给出),这种题目是结果导向的,也就是说只要运行结果对了,它就判对,但是如果你人工操作得到答案肯定是不行的,一方面,数据量大没法操作,另一方面,系统判分系统应该会识别你是否通过运行python得到结果,所以投机取巧的心态就不要有了。好好复习吧。

错题记录:选择题

2. 关于线性链表?的描述,以下选项中正确的是

A存储空间不一定连续,且前件元素一定存储在后件元素的前面

B存储空间必须连续,且前件元素一定存储在后件元素的前面

C存储空间必须连续,且各元素的存储顺序是任意的

D存储空间不一定连续,且各元素的存储顺序是任意的

3. 在深度为 7 的满二叉树?中,叶子结点的总个数是

A 31 B 64 C 63 D 32

百度:除最后一层无任何子节点外,每一层上的所有结点都有两个子结点的二叉树。国内教程定义:一个二叉树,如果每一个层的结点数都达到最大值,则这个二叉树就是满二叉树。也就是说,如果一个二叉树的层数为K,且结点总数是(2^k) -1 ,则它就是满二叉树。从图形形态上看,满二叉树外观上是一个三角形。

9261f9f79bbd6cb5269bed0415d6d50d.png

从数学上看,满二叉树的各个层的结点数形成一个首项为1,公比为2的等比数列。某节点的深度是指从根节点到该节点的最长简单路径边的条数
高度是指从该节点到叶子节点的最长简单路径边的条数
以图为例:

ec9fe4ed2a9b5ad961b1ea64d13c4084.png

以上分析全是废话:只需要知道树是什么;深度是什么(这里就是层数);满二叉树是什么;叶子是什么就够了;2^(7-1)

6. 关于软件危机?,以下选项中描述错误的是

A 软件成本不断提高

B 软件质量难以控制

C 软件过程不规范?不知道搞软件的都在干啥,可能……也能理解

D 软件开发生产率低

8. 以下选项中用树形结构表示实体之间联系的模型?是

A 网状模型 B 层次模型 C 静态模型 D 关系模型

对层次,网状,想想结构

关系模型中的一些术语:

1)关系:一个关系对应通常说的一张表;
2)元组:表中的一行即为一个元组;
3)属性:表中的一列即为一个属性,给每一个属性起一个名称即属性名;
4)码:也称为码键,表中的某个属性组,它可以唯一确定一个元组;
5)域:一组具有相同数据类型的值的集合。属性的取值范围来自某个域;
6)分量:元组中的一个属性值。
7)关系模式:对关系的描述,一搬表示为:关系名(属性1,属性2,…,属性n)
关系模型的数据操纵与完整性约束
关系模型的数据操纵主要包括查询、插入、删除和更新数据,它的数据操纵是集合操作,操作对象和操作结果都是关系。
这些操作必须满足关系的完整性约束条件:实体完整性、参照完整性和用户定义的完整性。

18. 关于 Python 字符串,以下选项中描述错误的是 选A

A 可以使用 datatype() 测试字符串的类型?

B 输出带有引号的字符串,可以使用转义字符

C 字符串是一个字符序列,字符串中的编号叫“索引”

D 字符串可以保存在变量中,也可以单独存在(?可能是说可以print出来的意思)

22. 关于 Python 组合数据类型,以下选项中描述错误的是

A 组合数据类型可以分为 3 类:序列类型、集合类型和映射类型

B 序列类型是二维元素向量,元素之间存在先后关系,通过序号访问

C Python 的 str、tuple 和 list 类型都属于序列类型

D Python 组合数据类型能够将多个同类型或不同类型的数据组织起来,通过单一的表示使数据操作更有序、更容易

组合数据类型:

序列类型 (字符串、元组、列表)

集合类型 (集合)

映射类型 (字典)

25. 以下选项中不是 Python 对文件的写操作方法?的是 选C

A writelines

B write 和 seek?seek()方法用于移动文件读取指针到指定位置。

seek() 方法语法如下:

  1. fileObject.seek(offset[, whence])
  2. offset -- 开始的偏移量,也就是代表需要移动偏移的字节数
  3. whence:可选,默认值为 0。给offset参数一个定义,表示要从哪个位置开始偏移;0代表从文件开头开始算起,1代表从当前位置开始算起,2代表从文件末尾算起。

donot care)C writetext?

D write

31.下面代码的输出结果是

  1. x = 0o1010
  2. print(x)

A 520

B 1024

C 32768

D 10

正确答案: A?o八进制;暴力运行就行了

32.下面代码的输出结果是 猜的

  1. x=10
  2. y=3
  3. print(divmod(x,y))

A (1, 3)

B 3,1

C 1,3

D (3, 1)

正确答案: D(直接在idle试试就好了,没必要记)

divmod(x, y, /) Return the tuple(x//y, x%y). Invariant: div*y + mod ==x.

33. 下面代码的输出结果是

  1. for s in"HelloWorld":
  2. if s=="W":
  3. continue
  4. print(s,end="")

A Hello

B World

C HelloWorld

D Helloorld(this is continue……,跳过条件,继续执行循环)

正确答案: D

34.给出如下代码:

DictColor ={"seashell":"海贝色","gold":"金色","pink":"粉红色","brown":"棕色", "purple":"紫色","tomato":"西红柿色"}

以下选项中能输出“海贝色”的是

A print(DictColor.keys())

B print(DictColor["海贝色"])

C print(DictColor.values())

D print(DictColor["seashell"])

正确答案: D(cv and idle)

35. 下面代码的输出结果是(列表切片?)

  1. s =["seashell","gold","pink","brown","purple","tomato"]
  2. print(s[1:4:2])?(14-1,间隔2

A ['gold', 'pink', 'brown']

B ['gold', 'pink']

C ['gold', 'pink', 'brown', 'purple','tomato']

D ['gold', 'brown']

正确答案: D

36. 下面代码的输出结果是

  1. d ={"大海":"蓝色", "天空":"灰色", "大地":"黑色"}
  2. print(d["大地"], d.get("大地", "黄色"))?

A 黑的 灰色

B 黑色 黑色

C 黑色 蓝色

D 黑色 黄色

正确答案: B don‘t care “黄色”

37. 当用户输入abc时,下面代码的输出结果是

  1. try:
  2. n = 0
  3. n = input("请输入一个整数: ")
  4. def pow10(n):
  5. return n**10
  6. except:
  7. print("程序执行错误")

A 输出:abc

B 程序没有任何输出

C 输出:0

D 输出:程序执行错误

正确答案: B

请仔细看代码,def定义后的函数并没有执行,仅仅是干扰

39.文件 book.txt 在当前程序所在目录内,其内容是一段文本:book,下面代码的输出结果是

  1. txt =open("book.txt", "r")
  2. print(txt)
  3. txt.close()

A book.txt

B txt

C 以上答案都不对

D book

正确答案: C

打印文本文件对象的时候绝对不是这样的,而是类似于 <_io.TextIOWrapper name='book.txt'mode='r' encoding='utf-8'>

选择题到这暂停:

note:凡是可以暴力运行的,不允许出错!

重点是最后一个操作:

前面的只是练练手:

1.数字格式化

下表展示了 str.format() 格式化数字的多种方法:

  1. >>> print("{:.2f}".format(3.1415926));
  2. 3.14
数字格式输出描述
3.1415926{:.2f}3.14保留小数点后两位
3.1415926{:+.2f}+3.14带符号保留小数点后两位
-1{:+.2f}-1.00带符号保留小数点后两位
2.71828{:.0f}3不带小数
5{:0>2d}05数字补零 (填充左边, 宽度为2)
5{:x<4d}5xxx数字补x (填充右边, 宽度为4)
10{:x<4d}10xx数字补x (填充右边, 宽度为4)
1000000{:,}1,000,000以逗号分隔的数字格式
0.25{:.2%}25.00%百分比格式
1000000000{:.2e}1.00e+09指数记法
13{:>10d}13右对齐 (默认, 宽度为10)
13{:<10d}13左对齐 (宽度为10)
13{:^10d}13中间对齐 (宽度为10)
11'{:b}'.format(11)
'{:d}'.format(11)'{:o}'.format(11)'{:x}'.format(11)'{:#x}'.format(11)'{:#X}'.format(11)
1011
1113b0xb0XB
进制

^, <, > 分别是居中、左对齐、右对齐,后面带宽度, : 号后面带填充的字符,只能是一个字符,不指定则默认是用空格填充。

+ 表示在正数前显示 +,负数前显示 -; (空格)表示在正数前加空格

b、d、o、x 分别是二进制、十进制、八进制、十六进制。

此外我们可以使用大括号 {} 来转义大括号,

print ("{} 对应的位置是 {{0}}".format("runoob"))

输出结果为:

runoob 对应的位置是 {0}

考点:格式控制符

2.jieba库

支持四种分词模式:

  • 精确模式,试图将句子最精确地切开,适合文本分析;
  • 全模式,把句子中所有的可以成词的词语都扫描出来, 速度非常快,但是不能解决歧义;
  • 搜索引擎模式,在精确模式的基础上,对长词再次切分,提高召回率,适合用于搜索引擎分词。
  • paddle模式,利用PaddlePaddle深度学习框架,训练序列标注(双向GRU)网络模型实现分词。同时支持词性标注。paddle模式使用需安装paddlepaddle-tiny,pip install paddlepaddle-tiny==1.6.1。目前paddle模式支持jieba v0.40及以上版本。jieba v0.40以下版本,请升级jieba,pip install jieba --upgrade 。PaddlePaddle官网

主要功能

  1. 分词
  • jieba.cut 方法接受四个输入参数: 需要分词的字符串;cut_all 参数用来控制是否采用全模式;HMM 参数用来控制是否使用 HMM 模型;use_paddle 参数用来控制是否使用paddle模式下的分词模式,paddle模式采用延迟加载方式,通过enable_paddle接口安装paddlepaddle-tiny,并且import相关代码;
  • jieba.cut_for_search 方法接受两个参数:需要分词的字符串;是否使用 HMM 模型。该方法适合用于搜索引擎构建倒排索引的分词,粒度比较细
  • 待分词的字符串可以是 unicode 或 UTF-8 字符串、GBK 字符串。注意:不建议直接输入 GBK 字符串,可能无法预料地错误解码成 UTF-8
  • jieba.cut 以及 jieba.cut_for_search 返回的结构都是一个可迭代的 generator,可以使用 for 循环来获得分词后得到的每一个词语(unicode),或者用
  • jieba.lcut 以及 jieba.lcut_for_search 直接返回 list
  • jieba.Tokenizer(dictionary=DEFAULT_DICT) 新建自定义分词器,可用于同时使用不同词典。jieba.dt 为默认分词器,所有全局分词相关函数都是该分词器的映射

ps:中文标点也是中文字符!

考点:jieba使用

再看看下面这个东西……

0x4DC0 是一个十六进制数,它对应的 Unicode 编码是中国古老的《易经》六十四卦的第一卦,请输出第 51 卦(震卦)对应的 Unicode 编码的二进制、十进制、八进制和十六进制格式。

don't care 0x4DC0 是个啥……

答案:print("二进制{0:b}、十进制{0}、八进制{0:o}、十六进制{0:x}".format(0x4DC0+50))

3.turtle库:入门级的图形绘制函数库

空间坐标体系&角度坐标体系:画布上真实游走的一海龟

rgb色彩体系:略

前者:海龟坐标;绝对坐标;前者:初始向右,x轴;后者:略

后者:略

函数:

1、运动命令forward(a) 向前移动a长度 fd(d)backward(a) 向后移动a长度 bk(d)

circle(r,angle)

为海龟坐标

right(a) 向右转动a度left(a) 向左移动a度

海龟角度

goto(x, y) 移动到坐标(x, y)位置:最简单的画线方式
speed(speed) 笔画绘制速度[0, 10]
2、笔画命令up() 笔画抬起,移动会不绘图
down() 笔画落下,移动会绘图

setheading(a) 改变朝向a° seth(angle):只改变行进方向,参数为绝对角度

角度坐标体系


pensize(a) 画笔宽度a
pencolor(colorstr) 画笔颜色
reset() 回复所有设置,清空窗口,重置turtle状态
clear() 清空窗口,不重置turtle状态
circle(r[, e]) 绘制一个圆形,r为半径,e为次数(多少次画成圆)
begin_fill()
fillcolor(colorstr) 填充颜色
end_fill()
3、其他命令
done() 程序继续执行
undo() 撤销上一次动作
hideturtle() 隐藏海龟
showturtle() 显示海龟
screensize() 窗口尺寸全国计算机等级考试二级Python 语言程序设计考试大纲(2018 年版)
6. 了解Python 计算生态在以下方面(不限于)的主要第三方库名称:网络爬虫、数据分析、数
据可视化、机器学习、Web 开发等。3. 字符串类型及格式化:索引、切片、基本的format()格式化方法。
4. 字符串类型的操作:字符串操作符、处理函数和处理方法。
5. 类型判断和类型间转换。
3. 程序的循环结构:遍历循环、无限循环、break 和continue 循环控制。
4. 程序的异常处理:try-except。
四、函数和代码复用
1. 函数的定义和使用。
2. 函数的参数传递:可选参数传递、参数名称传递、函数的返回值。
3. 变量的作用域:局部变量和全局变量。五、组合数据类型1. 组合数据类型的基本概念。2. 列表类型:定义、索引、切片。3. 列表类型的操作:列表的操作函数、列表的操作方法。4. 字典类型:定义、索引。5. 字典类型的操作:字典的操作函数、字典的操作方法。

字典内置函数&方法

Python字典包含了以下内置函数:

序号函数及描述
1cmp(dict1, dict2)
比较两个字典元素。
2len(dict)
计算字典元素个数,即键的总数。
3str(dict)
输出字典可打印的字符串表示。
4type(variable)
返回输入的变量类型,如果变量是字典就返回字典类型。

Python字典包含了以下内置方法:

序号函数及描述
1dict.clear()
删除字典内所有元素
2dict.copy()
返回一个字典的浅复制
3dict.fromkeys(seq[, val])
创建一个新字典,以序列 seq 中元素做字典的键,val 为字典所有键对应的初始值
4dict.get(key, default=None)
返回指定键的值,如果值不在字典中返回default值
5dict.has_key(key)
如果键在字典dict里返回true,否则返回false
6dict.items()
以列表返回可遍历的(键, 值) 元组数组
7dict.keys()
以列表返回一个字典所有的键
8dict.setdefault(key, default=None)
和get()类似, 但如果键不存在于字典中,将会添加键并将值设为default
9dict.update(dict2)
把字典dict2的键/值对更新到dict里
10dict.values()
以列表返回字典中的所有值
11pop(key[,default])
删除字典给定键 key 所对应的值,返回值为被删除的值。key值必须给出。 否则,返回default值。
12popitem()
返回并删除字典中的最后一对键和值。
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/167064
推荐阅读
相关标签
  

闽ICP备14008679号