一、单选题

  1. Python不支持的数据类型有(A)
    A、char
    B、int
    C、float
    D、list

python 中的标准数据类型:

其中数字类型有:

注意:
string 不是 char!!!
可变数据类型:列表list[ ]、字典dict{ }
不可变数据类型:整型int、字符串str’ '、元组tuple()

  1. 下面哪个是Python中的不变的数据结构(C)
    A、set
    B、list
    C、tuple
    D、dict

Python标准的内置数据类型有:
Number(整数型 int , 浮点数型 float, 布尔型 bool , 复数 complex)
String List Tuple Set Dictionary

Python可变数据类型:可改变变量的值,且不会新建对象
List、Dictionary、Set
Python不可变数据类型:不允许变量的值发生改变,发生改变时会新建对象
Tuple、String、Number

  1. 下面哪个不是Python合法的标识符(B)
    A、int32
    B、40XL
    C、self
    D、name

python中的标识符:
1)第一个字符必须是字母表中字母或下划线 _ 。
2)标识符的其他的部分由字母、数字和下划线组成。
3)标识符对大小写敏感。
4)不可以是python中的关键字,如False、True、None、class等。
注意:self不是python中的关键字。类中参数self也可以用其他名称命名,但是为了规范和便于读者理解,推荐使用self。

  1. 下列代码输出为:(B)
str1 = "Hello,Python";
str2 = "Python";
print(str1.index(str2));

A、5
B、6
C、7
D、8

语法

index()方法语法:

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

参数

- str -- 指定检索的字符串
- beg -- 开始索引,默认为0。
- end -- 结束索引,默认为字符串的长度。
从Hello开始数到p截止,从下标0开始数

  1. 以下程序输出为:(A)
def w1():print('正在装饰')def inner():print('正在验证权限')return inner()w1()

A、正在装饰 正在验证权限
B、正在装饰
C、正在验证权限
D、运行错误

如果外层函数返回的是一个函数名的话,运行结果应该是:正在装饰
如果外层函数返回的是函数调用的话,运行结果是:正在装饰 正在验证权限

  1. 以下程序输出为:(A)
info = {'name':'班长', 'id':100, 'sex':'f', 'address':'北京'}
age = info.get('age')
print(age)
age=info.get('age',18)
print(age)

A、None 18
B、None None
C、编译错误
D、运行错误

本题考查的是字典的 get 方法
dict.get(key, value=None)
当value的值存在时返回其本身,当key的值不存在时返回None(即默认参数)。

  1. 在python中,使用open方法打开文件,语法如下:open(文件名,访问模式),如果以二进制格式打开一个文件用于追加,则访问模式为(C)
    A、rb
    B、wb
    C、ab
    D、a

b 二进制模式
r 只读,指针将会放在文件的开头
rb 二进制只读,指针将会放在文件的开头
r+ 读写,指针将会放在文件的开头
rb+ 二进制读写,指针将会放在文件的开头
w 写入, 如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件
wb 二进制写入,如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等
w+ 读写,如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb+ 二进制读写,如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般用于非文本文件如图片等
a 追加,如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入
ab 二进制追加,如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入
a+ 读写,如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
ab+ 二进制读写,如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。

  1. 下列代码输出为(A)
str = "Hello,Python";suffix = "Python";print (str.endswith(suffix,2));

A、True
B、False
C、语法错误
D、F

str.endswith(suffix[, start[, end]]) 用于判断字符串是否以指定后缀结尾,如果以指定后缀结尾返回True,否则返回False。
可选参数"start"与"end"为检索字符串的开始与结束位置。

  1. Python调用(A)函数可实现对文件内容的读取
    A、read()
    B、readline()
    C、readlines()
    D、readclose()

1.read([size])方法从文件当前位置起读取size个字节,若无参数size,则表示读取至文件结束为止,它范围为字符串对象。
2.readline()方法每次读出一行内容,所以,读取时占用内存小,比较适合大文件,该方法返回一个字符串对象。
3.readlines()方法读取整个文件所有行,保存在一个列表(list)变量中,每行作为一个元素,但读取大文件会比较占内存。

  1. 下列哪个语句在Python中是非法的(B)
    A、x = y = z = 1
    B、x = (y = z + 1)
    C、x, y = y, x
    D、x += y

y = z + 1 的结果没有返回值,就无法赋值到 x

  1. 有如下函数定义,执行结果正确的是(A)
def dec(f):n = 3def wrapper(*args,**kw):return f(*args,**kw) * nreturn wrapper@dec
def foo(n):return n * 2

A、foo(2) == 12
B、foo(3) == 12
C、foo(2) == 6
D、foo(3) == 6

@dec 装饰器,先执行dec(), 并将 @dec 下面的 函数 作为dec()的参数。 (装饰器的作用:为已经存在的对象添加额外的功能)
foo(n) = n * 2 * 3

  1. 已知print_func.py的代码如下:
print('Hello World!')
print('__name__ value: ', __name__)def main():print('This message is from main function')if __name__ == '__main__':main()

print_module.py的代码如下:

import print_func
print("Done!")

执行结果为(A)
A、Hello World! __name__ value: print_func Done!
B、Hello World! __name__ value: print_module Done!
C、Hello World! __name__ value: __main__ Done!
D、Hello World! __name__ value: Done!

自己运行自己的程序,__name__ 即为__main__
当程序当做脚本被别人调用运行时,其__name__ 为自己的模块名称
这里的print_func即被导入到print_module中当做脚本被运行时,则print_func的__name__即变为其自身的模块名。

  1. 下列代码运行结果是(C)
a = map(lambda x: x**3, [1, 2, 3])
list(a)

A、[1, 6, 9]
B、[1, 12, 27]
C、[1, 8, 27]
D、(1, 6, 9)

map()接收两个参数,一个是功能函数f,一个list,并将f依次作用在list的每个元素上,并返回一个新的list,a**b是求a的b次方的意思

  1. 下列哪种类型是Python的映射类型?
    A、str
    B、list
    C、tuple
    D、dict

字典是 Python 语言中唯一的映射类型。

  1. 以下声明错误的是:(D)
    A、dic = {}
    B、dic = {100:200}
    C、dic = {(1,2,3):‘test’}
    D、dic = {[1,2,3]:‘test’}

字典的键值必须是不可变类型,如数字,字符串,元组,而列表是可变类型。

二、不定项选择题

  1. 以下python代码执行后:(BD)
foo = [1,2]
foo1 = foo
foo.append(3)

A、foo 值为[1,2]
B、foo 值为[1,2,3]
C、foo1 值为[1,2]
D、foo1 值为[1,2,3]

foo1 = foo为浅表复制,也称为浅拷贝,只是将foo1和foo指向相同存储地址。
在foo中追加3后,二者都改变。
如果不想改变foo1,我们可使用deepcooy进行深拷贝,复制出一份foo表在新的内存中存储,并由foo1指向该地址,此时再对foo进行操作,foo1不会改变。

  1. 若 a = (1, 2, 3),下列哪些操作是合法的(ABD)
    A、a[1:-1]
    B、a*3
    C、a[2] = 4
    D、list(a)

a[1:-1] ---->(2,)
a*3---->(1,2,3,1,2,3,1,2,3)
a是元组不可改变
list(a)----->[1,2,3]数组和列表可以相互转换

  1. 以下程序要求用户输入二进制数字0/1并显示之,请指出程序中代码第几行存在错误:(AC)
bit = int(input("Enter a binary digit:"))
if bit = 0 or 1:print("your input is" ,bit)
elseprint("your input is invalid")

A、2
B、3
C、4
D、5

2:if bit == 0 or bit == 1:
4:else:

  1. 解释型语言的特性有什么(AB)
    A、非独立
    B、效率低
    C、独立
    D、效率高

解释性语言和编译性语言的定义:
计算机不能直接理解高级语言,只能直接理解机器语言,所以必须要把高级语言翻译成机器语言,计算机才能执行高级语言编写的程序。
翻译的方式有两种,一个是编译,一个是解释。两种方式只是翻译的时间不同。
解释性语言的定义:
解释性语言的程序不需要编译,在运行程序的时候才翻译,每个语句都是执行的时候才翻译。这样解释性语言每执行一次就需要逐行翻译一次,效率比较低。
现代解释性语言通常把源程序编译成中间代码,然后用解释器把中间代码一条条翻译成目标机器代码,一条条执行。
编译性语言的定义:
编译性语言写的程序在被执行之前,需要一个专门的编译过程,把程序编译成为机器语言的文件,比如exe文件,以后要运行的话就不用重新翻译了,直接使用编译的结果就行了(exe文件),因为翻译只做了一次,运行时不需要翻译,所以编译型语言的程序执行效率高。

  1. Python中函数是对象,描述正确的是(ABCD)
    A、函数可以赋值给一个变量
    B、函数可以作为元素添加到集合对象中
    C、函数可以作为参数值传递给其它函数
    D、函数可以当做函数的返回值

https://www.cnblogs.com/smallmars/p/6936871.html

三、简答题

  1. 简述Python变量命名规则。
  • 变量名只能包含字母、数字和下划线。变量名可以字母或下划线开头,但不能以数字开头,例如,可将变量命名为message_1,但不能将其命名为1_message。
  • 变量名不能包含空格,但可使用下划线来分隔其中的单词。例如,变量名greeting_message可行,但变量名greeting message会引发错误。
  • 不要将Python关键字和函数名用作变量名,即不要使用Python保留用于特殊用途的单词,如print。
  • 变量名应既简短又具有描述性。例如,name比n好,student_name比s_n好,name_length比length_of_persons_name好。
  • 慎用小写字母l和大写字母O,因给他们可能被人错看成数字1和0;

注意:应使用小写的Python变量名。在变量名中使用大写字母虽然不会导致错误,但避免使用大写字母是个不错的注意。

  1. 简述Python的深浅拷贝以及应用场景?

深浅拷贝用法来自copy模块。

导入模块:import copy

浅拷贝:copy.copy

深拷贝:copy.deepcopy

对于 数字 和 字符串 而言,赋值、浅拷贝和深拷贝无意义,因为其永远指向同一个内存地址。

浅拷贝指仅仅拷贝数据集合的第一层数据,深拷贝指拷贝数据集合的所有层。所以对于只有一层的数据集合来说深浅拷贝的意义是一样的,比如字符串,数字,还有仅仅一层的字典、列表、元祖等。

深拷贝的时候python将所有数据在内存中新建了一份,所以如果你修改新的模版的时候老模版不会变。

四、编程题

  1. 请编写一个 Python 程序,输出9*9乘法表,代码行数越少越好。
print('\n'.join('   '.join(['%s * %s = %-2s' % (y,x,x*y) for y in range(1,x+1)]) for x in range(1,10)))
  1. 请编写一个 Python 程序,计算一个文件中的大写字母数量。
with open(file_name, 'r') as f:count = 0 for i in f.read():if i.isupper():count += 1print('大写字母数量为%d'%count)
  1. 实现用户输入用户名和密码,当用户名为 coco 或 alex 且 密码为 123456 时,显示登陆成功,否则登陆失败,失败时允许重复输入三次
count = 0while count < 3:username = input("Please enter your username: ")password = input("Please enter your password: ")if username == "seven" and password == "123":print("%s login successful." %username)breakelif username == "alex" and password == "123":print("%s login successful." %username)breakelse:print("login failed.")count += 1if count == 3:print("the max input is 3 times. ")

Matrix工作室第六届纳新AI组考核题(A卷)相关推荐

  1. Matrix工作室第六届纳新AI组考核题(B卷)

    一.单选题 下面哪个是Python中的不变的数据结构(C) A.set B.list C.tuple D.dict Python标准的内置数据类型有: Number(整数型 int , 浮点数型 fl ...

  2. Mathorcup数学建模竞赛第六届-【妈妈杯】A题:淡水养殖池塘水华发生及池水自净化研究(附一等奖获奖论文和matlab代码)

    赛题描述 文中涉及附件数据详见第六届Mathorcup数学建模竞赛A题 淡水养殖池塘水华发生及池水净化处理数据 目前在我国水产养殖中,池塘养殖产量约占淡水养殖的70%.近年来,随着淡水生态系统水体污染 ...

  3. Mathorcup数学建模竞赛第六届-【妈妈杯】A题:基于模糊综合评价和灰色关联度的淡水养殖池塘水华分析、预测及净化模型(附一等奖获奖论文和matlab代码)

    赛题描述 文中涉及附件数据详见第六届Mathorcup数学建模竞赛A题 淡水养殖池塘水华发生及池水净化处理数据 目前在我国水产养殖中,池塘养殖产量约占淡水养殖的70%.近年来,随着淡水生态系统水体污染 ...

  4. Mathorcup数学建模竞赛第六届-【妈妈杯】A题:淡水养殖池塘水华发生及池水自净化研究(附一等奖获奖论文、matlab和SAS代码)

    赛题描述 文中涉及附件数据详见第六届Mathorcup数学建模竞赛A题 淡水养殖池塘水华发生及池水净化处理数据​​​​​​​ 目前在我国水产养殖中,池塘养殖产量约占淡水养殖的70%.近年来,随着淡水生 ...

  5. Mathorcup数学建模竞赛第六届-【妈妈杯】A题:淡水养殖池塘水华发生及池水自净化研究(附特等奖获奖论文、SAS和matlab代码)

    赛题描述 文中涉及附件数据详见第六届Mathorcup数学建模竞赛A题 淡水养殖池塘水华发生及池水净化处理数据 目前在我国水产养殖中,池塘养殖产量约占淡水养殖的70%.近年来,随着淡水生态系统水体污染 ...

  6. Mathorcup数学建模竞赛第六届-【妈妈杯】A题:水产养殖池塘综合研究(附一等奖获奖论文、lingo和matlab代码)

    赛题描述 文中涉及附件数据详见第六届Mathorcup数学建模竞赛A题 淡水养殖池塘水华发生及池水净化处理数据 目前在我国水产养殖中,池塘养殖产量约占淡水养殖的70%.近年来,随着淡水生态系统水体污染 ...

  7. 蓝桥杯2015年第六届C/C++ B组省赛习题题解

    目录 第一题:奖券数目 第二题:星系炸弹(日期计算) 第三题:三羊献瑞(全排列) 第四题:格子中输出 第五题:九数组分数(dfs) 第六题:加法变乘法(枚举) 第七题:牌型种数(dfs+dp) 第八题 ...

  8. 小唐开始刷蓝桥(六)2015年第六届C/C++ B组蓝桥杯省赛真题

    文章目录 前言 一.奖券数目 二.星系炸弹 三.三羊献瑞 四.格子中输出 五.九数组分数 六.加法变乘法 七.牌型种数 八.移动距离 九.垒骰子 十.生命之树 上一篇: 小唐开始刷蓝桥(五)2016年 ...

  9. 十六届智能车全向组硬件开源 | 上海海事大学全向行进组

    简 介: 卓大,不知道你能不能看到我的消息.今年是我做车的第三年了,也是最后一年了.三年里经历了许多,走了很多弯路,心里的感慨也不少.这两天在整理资料的时候顺手在CSDN上写了一篇全向组的硬件开源贴, ...

最新文章

  1. Maven实践:版本管理 SNAPSHOT
  2. 超图js版本添加矢量图层并在图层上绘一个面要素
  3. python 安装 pip,setuptools
  4. php数组逗号连接,php – 如何使用逗号组合数组中的所有元素?
  5. .NET Core 3.0 发布小尺寸 self-contained 单体可执行程序
  6. PHP上传图片到数据库,并进行显示
  7. thinkphp+mysql+join+where_thinkphp5.0 多join时where无法between
  8. 他走了,留下了3800亿元的帝国
  9. Java--transient
  10. MySQL - 行锁 表锁 乐观锁 悲观锁 读锁 写锁
  11. Codeforces Round #155 (Div. 2) C YY题目
  12. android m4a转mp3格式转换,音频提取格式转换app
  13. python can通信_Python中的高级/抽象Canbus接口
  14. item_review - 获得淘宝商品评论电商API
  15. ppt 转html乱码,ppt转换成pdf乱码解决方法.pdf
  16. 17python实操案例五
  17. iMac 2019一体机开箱体验,其内存是什么牌子,怎样换iMac内存?
  18. TO B是什么?TO C呢?
  19. 基于javaweb+mysql的高校学生会社团管理系统(前台、后台)
  20. 【Java Set接口】

热门文章

  1. java EE map
  2. 201521123011 《Java程序设计》第8周学习总结
  3. 用NGUI做一个计时条!
  4. C# 反射中的GetType
  5. Tech·Ed 2007大会课程内容
  6. 会导致所有者权益减少的项目是_第二章:会计要素的确认(11)所有者权益
  7. oracle 02380,oracle 11.2.0.3 fornb…
  8. 微博 用户画像_微博/抖音/快手/小红书/B站内容营销和粉丝画像研究
  9. 哲学家就餐问题php代码,Python实现哲学家就餐问题实例代码
  10. sqoop 增量导入mysql_sqoop增量导入数据库