理论总结

2023-11-06

作业1,2

1.Python程序是区分大小写的。

2.解释程序对高级语言编写的程序是一边翻译,一边执行的。下次执行同样的程序时,还必须重新翻译。

3.Python是一种用途广泛、解释型、面向对象的程序设计语言。

4.程序设计语言包括机器语言、汇编语言和高级语言。

5.算法是解决某个问题所需要的方法和步骤。

6.下面程序的输出结果是______57.47__。

print(format(57.467657,".2f"))

7.Python解释器的提示符是______>>>__。

8.Python内置的集成开发环境是____IDLE____。

9.一个字节等于______8__位

10.Python 3.4及后续版本中,默认的安装和管理Python包(库)的工具是______pip__。

11.基于冯 · 诺依曼思想而设计的计算机硬件由______控制器__、运算器、存储器、输入设备和输出设备5个基本组成部分构成。

12.在Python中,字符串、列表、元组和字典都属于序列类型。 错

13.Python不允许使用关键字(保留字)作为变量名,允许使用内置函数名作为变量名,但这会改变函数名的含义。

14.Python的标识符必须以字母或下画线开头,不能以数字开头。

15.print(int(‘101’, 2)) 将二进制数101转化为十进制数

16.下列表达式的值是________。

在python中幂运算是从右往左计算的

3**2**3    #6561

17.print(bin(10))的输出结果是(进制用小写字母表示)0b1010

a = 12# 默认数字都是十进制
print(a)# 12
b = 0b0101010111#以0b开头的是二进制数,默认也是十进制输出
print(b)# 343
c = 0o33# 以0o开头的是八进制数
print(c)# 27
d = 0x24# 以0x开头的是十六进制数
print(d)# 36

18.下面程序的输出结果是______0.339%__ 。

print(format(0.0033911, "6.3%"))
ord()函数主要用来返回对应字符的ascii码;
chr()主要用来表示ascii码对应的字符,可以用十进制,也可以用十六进制。

20.下列( B )语句是错误的。(2分)

A. x = y = z = 1
B. x = (y = z + 1)
C. x, y = y, x
D. x += y

21:x的值为345.3546

format(x, "10.3f")   #bbb345.355

22.首先,python字符串不是通过NUL(即’\0’)来结束的。 在python中,你完全不需要为是否已经添加终止符而担心,其字符串值只包含所定义的内容。 在c或者c++中,字符串以’\0’结尾是C/C++标准规定的

23.将x的值格式化为小数点后3位小数,使用( A )。

(2分)

A. format(x, “5.3f”)
B. format(“5.3f”, x)
C. format(x, “5.3%”)
D. format(“3d”, x)

作业3 分支

24.python中的运算符:

表达式中包含一个运算符:

or 从左到右,返回第一个为真的值,都为假返回后一个值

and 从左到右,若所有值均为真,则返回后一个值,有一个假的值,则返回第一个假的值

包含两个及以上的逻辑运算符

逻辑运算符 and / or 一旦不止一个,其运算规则的核心思想就是短路逻辑。好的,那我们就来了解一下短路思想:

表达式从左至右运算,若 or 的左侧逻辑值为 True ,则短路 or 后所有的表达式(不管是 and 还是 or),直接输出 or 左侧表达式 。

表达式从左至右运算,若 and 的左侧逻辑值为 False ,则短路其后所有 and 表达式,直到有 or 出现,输出 and 左侧表达式到 or 的左侧,参与接下来的逻辑运算。

若 or 的左侧为 False ,或者 and 的左侧为 True 则不能使用短路逻辑。

对于and:

只要左边的表达式为真,那么整个表达式返回的是右边表达式的值,否则返回的是左边表达式的值
换言之,x and y 的值只能是x 和 y,x为真时就是y,x为假就是x
对于or:

只要两边的表达式都为真,整个表达式的结果返回的是左边表达式的值;
如果一真一假,返回真值表达式的值;
如果两个值都假,比如空值和0,返回的是右边的值(空值或0)
换言之,x or y 的值只可能是 x 和 y,x为真就是x,x为假就是y
对于not x:

x为假,输出True
x为真,输出False

25.要想得到[0,100]范围内的随机数,random.randint(0, n)里的n应该是___100_____。

26.random.random()的返回值是( B )。

A. 一个浮点数i,0 < i < 1.0
B. 一个浮点数i,0 <= i < 1.0
C. 一个浮点数i,0 <= i <= 1.0
D. 一个浮点数i,0 < i < 2.0

27.以下运算符右结合的是(E )。

A. *
B. **
C. %
D. and
E. =

28.对于以下程序:

even = False
if even = True:
    print("It is even!")

( B )是正确的

A. 在行1(even = False),程序有语法错误
B. 在行2,程序有语法错误,if even = True:不是一个正确的条件,它应该替换成if even == True:或if even:
C. 程序正常运行,但不显示任何信息
D. 程序正常运行,显示It is even!

作业4 循环

29.对于带有else子句的for语句和while语句,当循环因循环条件不成立而自然结束时,会执行else子句中的代码。

30.range的参数必须是整数

作业5 函数

31.下面程序的输出结果是________(注:不要有任何多余的空格)。

a = 10
def fun():
    global a
    a = 20
    print(a, end = ' ')
fun()
print(a)

20 20

32.下面程序的输出结果是________(注:不要有任何多余的空格)。

import functools
lst = ["Welcome ", "to ", "Python", ", ", "Programming ", "is ", "fun", "."]
print(functools.reduce(lambda x, y : x + y, lst))

Welcome to Python, Programming is fun.

33.有关函数的说法,( c )是错误的。

A. 函数是对一段代码的命名
B. 函数是代码功能的一种抽象
C. 函数是计算机对代码执行优化的要求
D. 函数是代码逻辑的封装

作业6 海归图

34.turtle.circle(radius, extent=None)

radius :弧形半径
当radius值为正数时,圆心在当前位置/小海龟左侧。
当radius值为负数时,圆心在当前位置/小海龟右侧。
extent :弧形角度。当无该参数或参数为None时,绘制整个圆形
当extent值为正数时,顺小海龟当前方向绘制。
当extent值为负数时,逆小海龟当前方向绘制。

35.在turtle中,画布绘图坐标系的绝对0度方向默认指向画布正右方。

36.clear() 方法

用于从屏幕中删除指定海龟的绘图,但不移动海龟。海龟的状态和位置以及其他海龟的绘图不受影响。

所以在turtle中,clear方法用于清除画布,并将海龟状态和位置重置为起始默认值。是错误

37.在turtle中,setheading(to_angle)或seth(to_angle)方法,将海龟的方向设置为to_angle,to_angle为角度。

38.turtle.dot(100, “red”)绘制了一个半径为100像素的红色实心点。(错,直径

作业7 字符串 作业8 列表和元组

1.len(“HZNU”)返回的结果是4,len(“杭州师大”)返回的结果也是4。

2.假设s1=“Python”,s2=“Python”,则表达式s1 is s2的值为True。

3.Python count() 方法用于统计字符串里某个字符或子字符串出现的次数。可选参数为在字符串搜索的开始与结束位置。

str.count(sub, start= 0,end=len(string))

replace方法:

str.replace(old, new[, max])

4.find和index find函数没找到会返回-1,index没找到会返回报错

5.find() 返回字符串最后一次出现的位置,如果没有匹配项则返回 -1。

str.rfind(str, beg=0 end=len(string))

6.center() 返回一个原字符串居中,并使用空格填充至长度 width 的新字符串。默认填充字符为空格。

str.center(width[, fillchar])

7.“Programming is fun”[1:1]的计算结果是( D )。

(2分)

A. Pr
B. r
C. Pr
D. ‘’
E. 非法的表达式

8.字符串切片操作

[m:n]:不包括n

9.只能通过切片访问列表中的元素,不能使用切片修改列表中的元素。(

10.列表不可以用find()方法来搜索数据是否在列表中。

11.将列表中的元素顺序打乱的shuffle()方法是random模块中的方法。

12.extend() 函数用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)。

13.下列程序的输出结果为( D )。

def f(value,values):
    value = 1
    values[0] = 44
t = 3
v = [1, 2, 3]
f(t, v)
print(t, v[0])

(2分)

A. 1 1
B. 1 44
C. 3 1
D. 3 44

14.pop() 参数是要删除的索引值

15.假设list1 = [11, 2, 23]、list2 = [2, 11, 23],list1 == list2的计算结果是( False )。

16.将list1的所有元素随机排列,使用( C )。(2分)

A. list1.shuffle()
B. shuffleList(list1)
C. random.shuffle(list1)
D. random.shuffleList(list1)

作业9 字典

1.字典中不存在顺序关系

2.字典中的键不可以对应多个值

3.字典中的键不允许重复。

4.执行语句d ={[1, 2]:3, [3, 4]:7},创建了字典d。(错误,列表不可哈希

所以字典的键不能是列表

dict.get(键)
dict.get(key[, value])  #如果字典中要找的值不存在,就返回value

6.使用字典对象的______values__方法(注意:不要有任何多余的空格)获取字典的所有值。

7.下面程序的输出结果为___9_____。

x = {1: 2, 3: 4, 5: 6}
print(sum(x))

8.下列会返回错误的语句是( A )。

A. d = dict([0, 1], [2, 3])
B. d = {}
C. d = dict(([0, 1], [2, 3]))
D. d = {0:1}

9.假设d1 = {“john”:40, “peter”:45}、d2 = {“john”:466, “peter”:45},d1 > d2 的计算结果是( C )。

A. True
B. False
C. 非法的表达式

10.假设d = {“john”:40, “peter”:45},使用的d.get(“susan”)获取一个值时将发生( B )。

A. 因为"susan"不是字典中的一个值,抛出KeyError异常
B. 正常执行,没有异常发生,返回None
C. 因为"susan"不是字典中的一个键,抛出KeyError异常
D. 因为"susan"不是字典中的一个键,抛出语法错误

11.假设d = {“john”:40, “peter”:45},删除"john":40,使用( B )。

A. d.delete(“john”:40)
B. d.delete(“john”)
C. del d[“john”]
D. del d(“john”:40)

作业10 集合

1.集合中的元素可以是元组,不能是字典

2.假设set1= {1, 2, 3},set2={1, 2, 3},则表达式set1 is set2的值为True。(错误

3.下面程序的输出结果为________(注意:不要有任何多余的空格)。

print({1, 2, 3, 4, 5} ^ {4, 5, 6, 7})
{1, 2, 3, 6, 7}
  1. set.difference 返回两个结果的差集

作业11 对象和类

1.自定义类时,实例方法的第一个参数名称不管是什么,都表示对象自身。

2.通过对象不能调用类方法和静态方法。(错误

3.属性可以像数据域一样进行访问,但赋值时具有方法的优点,可以对新值进行检查。

4.自定义类时,实例方法的第一个参数名称必须是self。(错误

5.下面程序的输出结果为______0 1__ (注意:不要有任何多余的空格)。

class A:
    def __init__(self, count = 0):
        self.count = count

def modify(a, n):
    a = A(8)
    n = 5

def main():
    a = A()
    n = 1
    modify(a, n)
    print(a.count, n)

main()

6.结构化程序的基本构造单位是函数,而面向对象程序的基本构造单位是

7.在Python中,自定义类时,与运算符"**"对应的特殊方法(魔法方法)名为_____pow__()_____

8.目前主要有结构化程序设计和面向对象程序设计这两种重要的程序设计方法。

9.对于Circle类,若定义对象:x = Circle();
下列( C )说法是最准确的。

A. x包含一个整数值
B. x包含一个Circle类型的对象
C. x包含一个指向Circle对象的引用
D. 可以给x赋一个整数值

作业12 继承和多态

1.创建子类对象时,会自动调用其父类中定义的__init__方法。(错误

2.python是一种多态语言,崇尚鸭子类型。在鸭子类型中,并不关心对象是什么类型,只关心对象的行为。

3.mro表示类继承的顺序。

4.所有类都派生自object类。

5.子类是父类的子集。(错误

6.如果定义一个类时没有指定继承哪个类,则默认继承object类。

7.在子类中可以通过“父类名.方法名”的方式显式调用父类中的方法。

8.在子类中可以覆盖其父类中定义的私有方法。(错误

9.子类(派生类)和父类(基类)之间必须存在is-a关系。

10.面向对象程序设计的三大特性是封装、继承多态

11.为了覆盖父类(基类)中的方法,子类(派生类)中的方法必须与父类(基类)中的方法具有相同的___方法头

12.一个子类(派生类)只有一个直接父类(基类)的情况称为单继承

13.Python使用mro表标记继承层次中查找父类的顺序。

14.一个子类可以有多个父类,一个父类也可以有多个子类

15.下列程序的输出结果为( 1 20 )。

私有属性不能修改

class ParentClass:
    def __init__(self):
        self.__x = 1
        self.y = 10
    def print(self):
        print(self.__x, self.y)

class ChildClass(ParentClass):
    def __init__(self):
        super().__init__()
        self.__x = 2
        self.y = 20
         
c = ChildClass()
c.print()

16.子类不是父类的一个子集

17.下列程序的输出结果为( A )。

没有重写print方法,所以调用的还是person类中的

class Person:
    def __get_info(self):
        return "Person's get_info is called"
    def print_person(self):
        print(self.__get_info(), end = ' ')

class Student(Person):
    def __get_info(self):
        return "Student's get_info is called"

def main():
    Person().print_person()
    Student().print_person()

main()

A. 先输出Person’s get_info is called,接着输出Person’s get_info is called
B. 先输出Student’s get_info is called,接着输出Person’s get_info is called
C. 先输出Student’s get_info is called,接着输出Student’s get_info is called
D. 先输出Person’s get_info is called,接着输出Student’s get_info is called

18.对于如下程序:

class A:
    def __init__(self, i = 0):
        self.i = i

class B(A):
    def __init__(self, j = 0):
        self.j = j

def main():
    b = B()
    print(b.i)
    print(b.j)

main()

( A )是正确的。

A. 类B是类A的子类,但类A的数据域i未被类B继承
B. 类B是类A的子类,自动继承了类A的所有数据域
C. 当创建一个类B的对象时,必须传递一个整数,例如B(5)
D. 对象b不能访问数据域j

作业13 异常

1.假设下面try-except块中的statement2语句出现一个异常:

try:
    statement1
    statement2
    statement3
except Exception1:
    # Handle exception 1
except Exception2:
    # Handle exception 2
statement4

statement3会被执行吗? (注意:只能填写"是"或"否")。

作业14 文件

1.内存文件不是存放在外存上的真正文件,而是存放在内存中的虚拟文件。

2.以写模式打开的文件无法进行读操作。

3.CSV文件是纯文本文件。

4.打开文件的含义是指将文件对象与外存上的文件建立联系。成功打开文件后,对该文件的操作都将通过文件对象来完成。

5.决数据永久性保存的有效方式是使用 文件

6.对文件进行写入操作之后,__flush__方法用来在不关闭文件对象的情况下强制将缓冲区内容写入文件。

7.可以使用load方法进行二进制读操作。

作业15 16 17 综合联系

1.继承是指类之间共享属性和操作的机制

2.软件测试的主要目的是发现程序中的错误

3.Python变量命名规则(超级详细)

标识符可以由字母、数字、下画线(_)组成,其中数字不能打头。

标识符不能是 Python 关键字,但可以包含关键字。

标识符不能包含空格。

4.下列关于 Python 组合数据类型的描述,错误的是(B )。

A. 组合数据类型可以分为3类:序列类型、集合类型和映射类型
B. 序列类型是二维元素向量,元素之间存在先后关系,通过序号访问
C. Python的str、tuple和list类型都属于序列类型
D. Python组合数据类型能够将多个同类型或不同类型的数据组织起来,通过单一的表示使数据操作更有序、更容易

5.如果当前时间是2018年5月1日10点10分9秒,下面程序的输出结果是( A )。

from datetime import datetime
dt = datetime(2018, 5, 1, 10, 10, 9)
print(dt.strftime("%Y=%m-%d@%H>%M>%S"))

A. 2018=05-01@10>10>09

6.下列关于Python的全局变量和局部变量的描述,错误的是( )。

A. 局部变量指在函数内部使用的变量,当函数退出时,变量依然存在,下次函数调用可以继续使用
B. 使用global保留字声明简单数据类型变量后,该变量作为全局变量使用
C. 简单数据类型变量无论是否与全局变量重名,仅在函数内部创建和使用,函数退出后变量被释放
D. 全局变量指在函数之外定义的变量,一般没有缩进,在程序执行全过程有效

7.下列关于Python的lambda函数的描述,错误的是( B )。(2分)

A. 可以使用lambda函数定义列表的排序原则
B. f = lambda x, y: x + y 执行后,f的类型为数字类型
C. lambda函数将函数名作为函数结果返回
D. lambda用于定义简单的、能够在一行内表示的函数

8.查看Python的版本:

mport sys 
print(sys.version) 

9.下列关于Python语言的变量的说法,正确的是( )。(2分)
B. 随时命名、随时赋值、随时使用

10.下列选项中,不是Python中用于进行数据分析及可视化处理的第三方库是(C )。(2分)

A. pandas
B. Mayavi2
C. MXNet
D. numpy

11.下列选项中,不是Python中用于进行Web开发的第三方库是(B)

A. Django
B. scrapy
C. Pyramid
D. Flask

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

理论总结 的相关文章

随机推荐

  • [蓝桥杯][算法提高VIP]我们的征途是星辰大海

    题目 题目链接 题解 实现题 这也很基础 写代码的时候细心点就行 代码 include
  • 时序预测

    时序预测 MATLAB实现PSO BP时间序列预测 粒子群优化BP神经网络时间序列预测 多指标评价 目录 时序预测 MATLAB实现PSO BP时间序列预测 粒子群优化BP神经网络时间序列预测 多指标评价 效果一览 基本介绍 程序设计 参考
  • 动态路由协议

    动态路由协议 在各台路由器上 激活同一种协议后 路由器间沟通计算获取未知路由信息 最终生成路由表实现全网可达 静态协议的缺点 1 在中大型网络中配置量大 2 不能实时收敛 不能基于拓扑的变化而变化 动态协议的优点 1 在中大型的配置量较静态
  • CRM-统计分析--线索统计--新增线索数量折线图(接口实现)

    统计分析 线索统计 新增线索数量折线图 需求 统计出一段时间内的每一天 新增的线索数量 通过每天新增的线索数量和线索总数量 分析线上线下活动的执行情况 难度级别 B级 接口名 report salesStatistics 请求方式 get请
  • 个人免签支付云端监听免挂机支付宝收款

    GOGO支付 打不开了 貌似liangle 然后自己根据原理实现了一套 方案用来替代 gogo支付收款 云端监听免挂机 支付宝采用抓包技术云端调用官方接口 获取收款信息 监听效率非常高 而且很稳定 GOGO支付个人免签支付系统实现原理说明
  • 让flexmojos modulefiles支持通配符文件集,模块输出不带版本号且按包结构输出

    jar包下载 http download csdn net source 1879817 1 从http svn sonatype org flexmojos tags flexmojos 3 2 0 check out 源码 2 修改fl
  • 《Attention Is All You Need》

    论文地址 https arxiv org abs 1706 03762 谷歌于2017年发布论文 Attention Is All You Need 提出了一个只基于attention的结构来处理序列模型相关的问题 比如机器翻译 相比传统的
  • 什么是Base64

    一 什么是Base64 百度百科中对Base64有一个很好的解释 Base64是网络上最常见的用于传输8Bit字节码的编码方式之一 Base64就是一种基于64个可打印字符来表示二进制数据的方法 什么是 可打印字符 呢 为什么要用它来传输8
  • logback mdc日志跟踪

    1 简介 MDC Mapped Diagnostic Context 映射调试上下文 是 log4j logback及log4j2 提供的一种方便在多线程条件下记录日志的功能 MDC 可以看成是一个与当前线程绑定的哈希表 可以往其中添加键值
  • 图象恢复——(逆滤波,维纳滤波)

    目的 对获取图像在频域用高斯函数进行退化并叠加白噪声 对退化图像进行逆滤波和维纳滤波恢复 比较原始图像和恢复图像 对利用逆滤波和维纳滤波恢复方法恢复图像进行比较 一 基本原理 图像复原是一种客观的操作 通过使用退化现象的先验知识重建或恢复一
  • Windows上Kafka运行环境安装

    1 安装JDK 1 1 安装文件 http www oracle com technetwork java javase downloads index html 下载JDK 1 2 安装完成后需要添加以下的环境变量 右键点击 我的电脑 g
  • Daily Scrum: 2012/11/12

    由于我们是从10月31日开始进行Daily Scrum的 所以我们的Daily Scrum时间段为10 31 11 12共10天 包括一天周六 成员 角色 今天工作 明天计划 王安然 PM Dev 完成了EnermyCraft抽象类 并进行
  • 毕业设计-基于深度学习的命名实体识别研究

    目录 目录 前言 课题背景和意义 实现技术思路 一 命名实体识别简单概述 二 基于深度学习的命名实体识别方法 实现结果 最后 前言 大四是整个大学期间最忙碌的时光 一边要忙着备考或实习为毕业后面临的就业升学做准备 一边要为毕业设计耗费大量精
  • 打包第三库那些事

    介绍 一般来说 写完一个第三方库需要打包出三个文件夹的文件 对应三种不同模块类型 outputpath dist umd module es es module lib commonjs module 三个模块类型 umd UMD Univ
  • Springboot使用Knife4j

    简述 knife4j是为Java MVC框架集成Swagger生成Api文档的增强解决方案 knife4j的前身是 swagger bootstrap ui 为了契合微服务的架构发展 由于原来 swagger bootstrap ui采用的
  • eclipse opengl java_eclipse安装openGL方法(完整版)

    学校上机使用在Windows上开发OpenGL 一般都会选择Visual Studio作为开发工具 不过我更喜欢Eclipse 在Windows上开发OpenGL所需的库一般会带有32这个后缀 跟Linux上的还不太一样 1 首先下载Ecl
  • 移入——归约技术

    归约 定义 我们可以将自底向上语法分析过程看成是建一个串w 归约 慰问发开始符号的过程 在归约中 一个与某产生式体相匹配的特定子串被替换为该产生式的头部的非终结符号 定义理解起来比较晦涩 我们来看个例子就知道了 已知有文法 E gt E T
  • SpringBoot slf4j的yaml日志配置不生效

    Spring boot工程中使用slf4j日志框架 发现日志配置总是不生效 我的yaml配置如下 logging level 全局日志级别 root info 具体到某个类的日志级别 打印所有访问请求日志 com xyz filter We
  • specialization of template.... in different namespace的解决

    代码来自DTL文档index htm struct Example tablename columnname int exampleInt DB EXAMPLE INT VALUE string exampleStr DB EXAMPLE
  • 理论总结

    作业1 2 1 Python程序是区分大小写的 2 解释程序对高级语言编写的程序是一边翻译 一边执行的 下次执行同样的程序时 还必须重新翻译 3 Python是一种用途广泛 解释型 面向对象的程序设计语言 4 程序设计语言包括机器语言 汇编