第八章 子程序设计
- 格式:ppt
- 大小:108.50 KB
- 文档页数:26
Python程序设计题库——第⼋章关于Python对⽂件的处理,以下选项中描述错误的是( )A. 当⽂件以⽂本⽅式打开时,读写按照字节流⽅式B. Python能够以⽂本和⼆进制两种⽅式处理⽂件C. Python通过解释器内置的open()函数打开⼀个⽂件D. ⽂件使⽤结束后要⽤close()⽅法关闭,释放⽂件的使⽤授权答案:A以下选项中,不是Python对⽂件的读操作⽅法的是( )A. readB. readlineC. readtextD. readlines答案:C以下选项中,不是Python对⽂件的打开模式的是( )A. 'w'B. 'r'C. '+'D. 'c'答案:D关于数据组织的维度,以下选项中描述错误的是( )A. 数据组织存在维度,字典类型⽤于表⽰⼀维和⼆维数据B. ⾼维数据由键值对类型的数据构成,采⽤对象⽅式组织C. ⼀维数据采⽤线性⽅式组织,对应于数学中的数组和集合等概念D. ⼆维数据采⽤表格⽅式组织,对应于数学中的矩阵答案:A关于Python⽂件打开模式的描述,以下选项中错误的是( )A. 追加写模式aB. 只读模式rC. 覆盖写模式wD. 创建写模式n答案:D关于CSV⽂件的描述,以下选项中错误的是( )A. *CSV⽂件的每⼀⾏是⼀维数据,可以使⽤Python中的列表类型表⽰B. 整个CSV⽂件是⼀个⼆维数据C. *CSV⽂件格式是⼀种通⽤的、相对简单的⽂件格式,应⽤于程序之间转移表格数据D. *CSV⽂件通过多种编码表⽰字符答案:D关于Python⽂件的 '+' 打开模式,以下选项中描述正确的是( )A. 与r/w/a/x⼀同使⽤,在原功能基础上增加同时读写功能B. 读模式C. 追加写模式D. 覆盖写模式答案:A表格类型数据的组织维度是( )A. ⾼维数据B. ⼀维数据C. 多维数据D. ⼆维数据答案:D“键值对”类型数据的组织维度是( )A. ⾼维数据B. ⼆维数据C. 多维数据D. ⼀维数据答案:A给定列表ls = {1, 2, 3, "1", "2", "3"},其元素包含两种数据类型,则ls的数据组织维度是( )A. 多维数据B. ⼆维数据C. ⾼维数据D. ⼀维数据答案:D给定字典d = {1:"1", 2:"2", 3: "3"},其元素包含两种数据类型,则字典d的数据组织维度是( )A. ⼆维数据B. 多维数据C. ⾼维数据D. ⼀维数据答案:C以下选项中,不是Python中⽂件操作的相关函数是( )A. open()B. read()C. load()D. write()答案:C以下选项中,不是Python中⽂件操作的相关函数是( )A. write()B. open()C. readlines()D. writeline()答案:D以下选项中,不是Python⽂件处理.seek()⽅法的参数是( )A. 0B. 1C. 2D. -1答案:D以下选项中,不是Python⽂件打开的合法模式组合是( )A. "r"B. "a"C. "+"D. "w"答案:C以下选项中,不是Python⽂件打开的合法模式组合是( )A. "a+"B. "t+"C. "r+"D. "w+"答案:B以下选项中,不是Python⽂件打开的合法模式组合是( )A. "br+"B. "wr"C. ""D. "bw"答案:B以下选项中,不是Python⽂件⼆进制打开模式的合法组合是( )A. "b"B. "x+"C. "bx"D. "bw"答案:B关于⼀维数据存储格式问题,以下选项中描述错误的是( )A. ⼀维数据可以采⽤CSV格式存储B. ⼀维数据可以采⽤直接相连形成字符串⽅式存储C. ⼀维数据可以采⽤分号分隔⽅式存储D. ⼀维数据可以采⽤特殊符号@分隔⽅式存储答案:B关于⼆维数据CSV存储问题,以下选项中描述错误的是( )A. CSV⽂件的每⼀⾏表⽰⼀个具体的⼀维数据B. CSV⽂件的每⾏采⽤逗号分隔多个元素C. CSV⽂件不是存储⼆维数据的唯⼀⽅式D. CSV⽂件不能包含⼆维数据的表头信息答案:D以下选项中,对CSV格式的描述正确的是( )A. CSV⽂件以英⽂特殊符号分隔元素B. CSV⽂件以英⽂逗号分隔元素C. CSV⽂件以英⽂空格分隔元素D. CSV⽂件以英⽂分号分隔元素答案:B关于⽂件关闭的.close()⽅法,以下选项中描述正确的是( )A. ⽂件处理遵循严格的“打开—操作—关闭”模式B. ⽂件处理后可以不⽤.close()⽅法关闭⽂件,程序退出时会默认关闭C. ⽂件处理结束之后,⼀定要⽤.close()⽅法关闭⽂件D. 如果⽂件是只读⽅式打开,仅在这种情况下可以不⽤.close()⽅法关闭⽂件答案:B表达式",".join(ls)中ls是列表类型,以下选项中对其功能的描述正确的是( )A. 将逗号字符串增加到列表ls中B. 在列表ls每个元素后增加⼀个逗号C. 将列表所有元素连接成⼀个字符串,每个元素后增加⼀个逗号D. 将列表所有元素连接成⼀个字符串,元素之间增加⼀个逗号答案:D以下⽂件操作⽅法中,不能从CSV格式⽂件中读取数据的是( )A. readlinesB. readlineC. seekD. read答案:C以下⽂件操作⽅法中,不能向CSV格式⽂件写⼊数据的是( )A. seek和writeB. writelinesC. writeD. writeline答案:D两次调⽤⽂件的write⽅法,以下选项中描述正确的是( )A. 连续写⼊的数据之间默认采⽤逗号分隔B. 连续写⼊的数据之间⽆分隔符C. 连续写⼊的数据之间默认采⽤空格分隔D. 连续写⼊的数据之间默认采⽤换⾏分隔答案:B表达式writelines(lines)能够将⼀个元素是字符串的列表lines写⼊⽂件,以下选项中描述正确的是( )A. 列表lines中各元素之间⽆分隔符B. 列表lines中各元素之间默认采⽤逗号分隔C. 列表lines中各元素之间默认采⽤换⾏分隔D. 列表lines中各元素之间默认采⽤空格分隔答案:A关于open()函数的⽂件名,以下选项中描述错误的是( )A. ⽂件名不能是⼀个⽬录B. ⽂件名对应的⽂件可以不存在,打开时不会报错C. ⽂件名可以是相对路径D. ⽂件名可以是绝对路径答案:BPython语句:f = open(),以下选项中对f的描述错误的是( )A. 将f当作⽂件对象,f.read()可以读⼊⽂件全部信息B. 表达式print(f)执⾏将报错C. *f是⼀个Python内部变量类型D. *f是⽂件句柄,⽤来在程序中表达⽂件答案:B使⽤open()打开⼀个Windows操作系统D盘下的⽂件,以下选项中对路径的表⽰错误的是( )A. D:\PythonTest\a.txtB. D://PythonTest//a.txtC. D:\PythonTest\a.txtD. D:/PythonTest/a.txt答案:A当前程序路径在D:\PythonTest⽬录中,使⽤open()打开D盘根⽬录下⽂件,以下选项中对路径的表⽰错误的是( )A. D:\a.txtB. D:\a.txtC. ../a.txtD. ..答案:B以下选项对应的⽅法可以⽤于从CSV⽂件中解析⼀⼆维数据的是( )A. split()B. format()C. exists()D. join()答案:A以下选项对应的⽅法可以⽤于向CSV⽂件写⼊⼀⼆维数据的是( )A. split()B. strip()C. exists()D. join()答案:D以下选项对应的⽅法可以辅助⽤于从CSV⽂件中解析⼆维数据的是( )A. count()B. strip()C. format()D. center()答案:B关于CSV⽂件的扩展名,以下选项中描述正确的是( )A. 可以为任意扩展名B. 扩展名只能是.txtC. 扩展名只能是.csvD. 扩展名只能是.dat答案:A关于⽂件的打开⽅式,以下选项中描述正确的是( )A. ⽂件只能选择⼆进制或⽂本⽅式打开B. 所有⽂件都可能以⽂本⽅式打开C. ⽂本⽂件只能以⽂本⽅式打开D. 所有⽂件都可能以⼆进制⽅式打开答案:D对于特别⼤的数据⽂件,以下选项中描述正确的是( )A. 选择内存⼤的计算机,⼀次性读⼊再进⾏操作B. *Python可以处理特别⼤的⽂件,不⽤特别关⼼C. 使⽤for .. in..循环,分⾏读⼊,逐⾏处理D. Python⽆法处理特别⼤的数据⽂件答案:C关于⾼维数据,以下选项中描述错误的是( )A. ⾼维数据只能表达键值对数据B. “键值对”是⾼维数据的主要特征C. ⾼维数据可⽤于表达⼀⼆维数据D. ⾼维数据⽤来表达索引和数据之间的关系答案:A当打开⼀个不存在的⽂件时,以下选项中描述正确的是( )A. ⽂件不存在则创建⽂件B. ⼀定会报错C. 根据打开类型不同,可能不报错D. 不存在⽂件⽆法被打开答案:C关于数据维度,以下选项中描述错误的是( )A. ⼀维数据可能存在顺序,也可以没有顺序B. 数据维度包括⼀⼆维、多维和⾼维数据C. 所有数据都能⽤维度⽅式表⽰D. 图像由于存在长宽,所以图像数据是⼆维数据答案:D以下选项中不是⽂件操作函数或⽅法的是( )A. loadB. readC. writelinesD. readlines答案:A对于⽆序的⼀维数据,以下选项中描述错误的是( )A. ⽆序⼀维数据可以采⽤列表类型来表达B. ⽆序⼀维数据可以采⽤字典类型来表达C. ⽆序⼀维数据可以采⽤集合类型来表达D. ⽆序⼀维数据⽆法利⽤Python语⾔有效表达答案:D调⽤open函数可以打开指定⽂件,在open()函数中访问模式参数使⽤( )表⽰只读。
第八章可编程序控制器的程序设计第一节梯形图的特点及绘制原则第二节PLC程序设计方法第三节顺序控制设计方法中梯形图的编程方式第一节梯形图的特点及绘制原则一、梯形图的特点(1)梯形图按自上而下、从左到右的顺序排列。
每个继电器线圈为一个逻辑行,即一层阶梯。
每一个逻辑行起于左母线,然后是触点的连接,最后终止于继电器线圈或右母线。
(2)在梯形图中某个编号继电器线圈只能出现一次,而继电器触点(常开或常闭)可无限次引用。
(3)在每一逻辑行中,串联触点多的支路应放在上方。
如果将串联触点多的支路放在下方,则语句增多,程序变长。
图8-1梯形图之一124LD 1AND 2OR 3OUT43(a)合理1243LD 3LD 1AND 2ORB OUT4(b) 不合理(4)在每一个逻辑行中,并联触点多的支路应放在左边。
如果将并联触点多的电路放在右边,则语句增多、程序变长。
LD 1OR 2AND 3OUT 41342(a) 合理3142LD 3LD 1OR 2ANB OUT 4(b) 不合理图8-2梯形图之二(5)梯形图中,不允许一个触点上有双向“电流”通过。
对于这样的梯形图,应根据其逻辑功能作适当的等效变换。
512643(a)523541624(b)图8-3梯形图之三(6)梯形图中,当多个逻辑行都具有相同条件时,为了节省语句数量,常将这些逻辑行合并。
147213621582(a )不合理24781365(b )合理图8-4 梯形图之四(7)如果电路结构复杂,用ANB、ORB等指令难以处理时,可以重复使用一些触点改成等效电路,再进行编程。
12 345AB2A35B134图8-5 复杂电路的处理方法(8)设计梯形图时,输入继电器的触点状态全部按相应的输入设备为常开进行设计更为合适,不易出错。
二、典型单元梯形图分析1、起动保持和停止电路Y000X001X000Y000X000 X001 Y000图8-6起保停电路最主要的特点是具有“记忆”功能2、电动机正反转控制电路~KM2 KM1KM1 KM2SB1SB2SB3COM X000Y000X001X002Y001PLC COM(a) PLC 的外部接线图Y001X001 X000 X002 Y000 Y001X000 X001 X002 Y001 Y000Y000(b )梯形图图8-7电动机正反转控制电路SB1为停止按钮,SB2为正转起动按钮,SB3为反转起动按钮,KM1为正转接触器,KM2为反转接触器。
202第八章继承与派生(Inheritance and Derive)第八章 继承与派生(Inheritance and Derive) C++程序用不同的类定义来表示一组数据及对这些数据的操作,往往在不同的类之间有某种关系,除了上一章介绍的包含关系和友元关系之外,更多的是继承与派生关系。
例如,一个公司或工厂的计算机管理系统,与设备有关的数据,如设备登号、设备购入时间、设备价值等数据及若干操作的可以构成一个类。
交通工具是设备中的一类,它除了作为设备具有一般性之外,又会有一些作为交通工具的特定数据及操作,如它应有由公安机关发给的牌照号等。
又如汽车,它是交通工具的一种。
司机姓名、牌号,可能是它特有的数据。
而货车、轿车、大客车又是汽车中的不同集合,与它们分别相关的又会有不少数据,如轿车的使用人姓名、货车的吨位、客车的载人数等等,都是它们特有的数据项。
把与设备,交通工具,汽车,轿车,货车,客车相关的数据及操作定义为互不相关的独立的类是不科学的,同时,也会造成许多重复内容,例如,所有这些类,都包括同一个数据成员:设备登记号、购入时间等等。
不同类的定义应反映出类之间的相关关系,反映出上面例子中的层次关系。
C++语言中提供了类定义的派生和继承的功能,很好地解决了上面提出的问题。
两个类之间的继承关系,若类A是类B的基类,则类B是类A的派生类。
我们首先从下面的实例中学习如何建立类与类之间的继承关系。
8.1 公司雇员档案的管理 公司中的雇员档案的管理是整个公司的管理系统的一个组成部分,其雇员的档案数据内容一般根据雇员在公司中的不同职责和位置而有所区别。
除了一般雇员之外,可能还有管理人员、工程技术人员和高级主管,这些人员也是雇8.1 公司雇员档案的管理203员,但他们又有其特殊性,在数据库中又必须保存某些特定的信息,例如管理人员有级别信息,技术人员有学位、专业信息等等。
因此,在管理软件中所设计的类应反映其层次关系和特殊性,下面的程序是一个简化了的层次模块结构。