我的网站:https://pythoneers

1. Python3.x版本的保留字总数是

A. 35
B. 27
C. 16
D. 29

[答案]:A
[解析]:Python中的保留字是35个(如果有33的选项也可选择),可以通过 help(keywords) 来查看这些保留字。

测试程序:

help('keywords')

打印结果:

Here is a list of the Python keywords.  Enter any keyword to get more help.

False               class               from                or
None                continue            global              pass
True                def                 if                  raise
and                 del                 import              return
as                  elif                in                  try
assert              else                is                  while
async               except              lambda              with
await               finally             nonlocal            yield
break               for                 not                 
2. 以下选项中,不是Python语言保留字的是

A. while
B. except
C. do
D. pass

[答案]:C
[解析]:使用 help(keywords) 可查看Python中的保留字,不难发现Python中是没有do的。

3. 关于Python程序框架,以下选项中描述错误的是

A. Python不采用严格的缩进来表明程序框架
B. Python语言的缩进可以采用Tab键实现
C. Python单层缩进代码属于之前最邻近的一行非缩进代码,多层缩进代码根据缩进关系决定所属范围
D. 判断、循环、函数等语法形式能够通过缩进包含一批Python代码,进而表达对应的语义

[答案]:A
[解析]:Python采用严格的缩进来表明程序框架。

4. 下列选项中不符合Python语言变量规则的是

A. TempStr
B. I
C. 3_1
D. _AI

[答案]:C
[解析]:变量名不能以数字开头。

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

A. 字符串是一对单引号或双引号括起来的零个或多个字符
B. 字符串是字符的序列,也是序列类型的一种
C. 字符串使用[]来进行索引或切片
D. Python字符串的切片方式是[N, M],不包括M

[答案]:D
[解析]:Python字符串的切片方式是[N:M],不包括M

6. 给出以下代码:TempStr = 'Hello World',可以输出"World"子串的是

A. print(TempStr[-5:])
B. print(TempStr[-5:-1])
C. print(TempStr[-5:0])
D. print(TempStr[-4:-1])

[答案]:A
[解析]:A选项的方式是可以获取"World"子串的;B选项中,切割后的子字符串是"Worl",所以错误;C选项中,-5到0索引之间是不存在元素的,切割后的结果是空字符串,所以也错误;D选项中,切割后的子字符串是"orl",也是不满足题意的。下面是测试的过程:

7. 关于赋值语句,以下选项中描述错误的是

A. 赋值语句采用符号 = 表示
B. 赋值与二元操作符可以组合,例如 &=
C. a, b = b, a 可以实现 a 和 b 值的互换
D. a, b, c = b, c, a是不合法的

[答案]:D
[解析]:a, b, c = b, c, a是可以互换信息的,是合法的,所以D错误。如:

8. 关于eval函数,以下选项中描述错误的是

A. eval函数的定义为:eval(source, globals = None, locals = None, /)
B. eval函数的作用是将输入的字符串转换为Python语句,并执行该语句
C. 如果用户希望输入一个数字,并用程序对这个数字进行计算,可以采用eval(input(<输入提示字符串>))组合
D. 执行>>>eval(' "hello" ')和执行>>>eval(' "Hello" ')得到的结果相同

[答案]:D
[解析]eval(' "hello" ')执行后得到是字符串'hello',而eval(' "Hello" ')执行后得到的是字符串'Hello'。所以,执行它们得到的结果是不同的。

9. 关于Python语言的注释,以下选项中描述错误的是

A. Python 语言有两种注释:单行注释和多行注释
B. Python 语言的单行注释以#开头
C. Python 语言的单行注释以单引号'开头
D. Python 语言的多行注释以'''(三个单引号)开头和结尾

[答案]:C
[解析]:Python语言的单行注释是以#开头的,C选项很明显是错误的。

10. 关于Python语言的特点,以下选项中描述错误的是

A. Python 语言是脚本语言
B. Python 语言是非开源语言
C. Python 语言是跨平台语言
D. Python 语言是多模型语言

[答案]:B
[解析]:Python语言是开源的,所以B选项错误。

11. 关于import引用,以下选项中描述错误的是

A. import保留字用于导入模块或者模块中的对象
B. 使用 import turtle 引入 turtle 库
C. 可以使用 from turtle import setup 引入 turtle 库
D. 可以使用 import turple as t 引入turple库,取别名为t

[答案]:C
[解析]:C 选项中使用 from turtle import setup 导入的是 turtle 库中setup函数,而不是整个turtle库,所以 C 选项是错误的。

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

print(0.1 + 0.2 == 0.3)

A. True
B. False
C. true
D. false

[答案]:B
[解析]:Python中布尔类型的值有两种True和False,严格区分大小写,不能使用true和false代替,所以首先排除C、D选项。执行 print(0.1 + 0.2 == 0.3),计算 0.1 + 0.2 的值是否等于0.3,如果等于为True,否则为False。在计算 0.1 + 0.2 的时,计算机是将十进制数转换为二进制数,然后再进行运算的。但是,浮点数转换为二进制就会出现问题,转换为二进制后,二进制值不会精确等于转换之前的十进制的值。同时,计算机存储的位数也是有限制的,所以 0.1 + 0.2 经过计算后是不等于 0.3 的,执行 print(0.1 + 0.2 == 0.3)的结果便是 False。故该题 B 选项是正确的。实际上浮点数的运算问题不仅仅是Python中有,只要是支持浮点数运算的变成语言都会遇到。我们可以在 Python 解释器中测试结果:

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

print(round(0.01 + 0.2, 1) == 0.3)

A. True
B. False
C. true
D. false

[答案]:B
[解析]:round(x) 函数返回浮点数 x 的四舍五入值,保留到整数位,0.01+0.2 等于0.21,round(0.01+0.2) 的值为0,不等于0.3,所以输出的结果是 False。让我们在解释器中测试结果:

14. 在一行上写多条Python语句使用符号是

A. 分号
B. 冒号
C. 逗号
D. 点号

[答案]:A
[解析]:在一行代码上写多条语句使用的是分号。让我们在解释器中看一下使用分号:

15. 给出如下代码:

s = 'Python is beautiful!'可以输出"python"语句使用的符号是

A. print(s[0:6])
B. print(s[0:6].lower())
C. print(s[-21:-14].lower)
D. print(s[:-14])

[答案]:B
[解析]:lower()方法可以将字符串中所有大写英文字符转换为小写。A选项中,切片后得到的是"Python",不满足题意;B选项在A选项的基础上,使用了lower()方法,将字符串"Python"中的大写字符P转换为小写字符得到"python",满足题意。C和D选项中字符串 s 经过切片后均不能获取正确的字符串。在解释器中测试:

16. 给出如下代码:
s = 'Python is Open Source!'
print(s[0:].upper())

上述代码的输出结果是:

A. PYTHON IS OPEN SOURCE!
B. PYTHON
C. PYTHON is Open Source!
D. PYTHON IS OPEN SOURCE

[答案]:A
[解析]:upper()方法将字符串中的小写字母转换为大写字母,所以A选项是正确的。在解释器中测试:

17. 以下选项中符合 Python 语言变量命名规则的是

A. Templist
B. !i
C. 5_1
D. (VR)

[答案]:A
[解析]Python 语言变量命名规则是:只能包含字母、数字和下划线,变量不能以数字开头,不能是python中的关键字。B、D选项中有特殊字符,所以不符合题意;不能以数字开头,故 C 选项不符。只有 A 选项是满足Python语言变量命名规则的。

18. 以下选项中可以查看Python代码的语言版本(例如3.5.3)的是

A.

import sys
sys.version

B.

impoer sys
sys.path

C.

import sys
sys.version_info

D.

import .sys
sys.exc_info()

[答案]:A
[解析]:通过sys.version可以获取当前Python代码的语言版本,所以A选项是正确的。在解释器中测试:

19. 下列选项中可以获取Python整数类型帮助的是

A. help(int)
B. dir(int)
C. help(float)
D. dir(str)

[答案]:A
[解析]:help(int)可以获取Python整数类型帮助。在解释器中测试:

20. 给出如下代码:
x = 3.14
eval('x + 10')

上述代码的输出结果是:
A. 系统报错
B. 13.14
C. 3.1410
D. TypeError: must be str, not int

[答案]:B
[解析]eval('str')将字符串str当做有效的表达式来求值并且返回计算结果,所以选择B选项。在解释中进行测试:

21. Python语言的主网站网址是

A. https://www.python/
B. https://www.python123.io/
C. https://www.python/pypi
D. https://www.python123/

[答案]:A
[解析]:Python语言主要的网站是"https://www.python/"。

22. 下列Python保留字中,用于异常处理结构中捕获特定类型异常的是

A. def
B. except
C. do
D. pass

[答案]:B
[解析]:except 用于异常处理结构中捕获特定类型异常,所以选择B选项。

23. 关于Python注释,以下选项中描述错误的是

A. Python注释语句不被解释器过滤掉,也不被执行
B. 注释可用于表明作者和版权信息
C. 注释用于解释代码原理或者用途
D. 注释可以辅助程序调试

[答案]:A
[解析]

24. 以下选项中,不是Python数据类型的是

A. 实数
B. 整数
C. 字符串
D. 列表

[答案]:A
[解析]:Python数据类型有整数、浮点数、复数、字符串、列表、元祖、字典,“实数”不是Python数据类型。

25. 下列Python保留字中,不用于表示分支结构的是

A. if
B. elif
C. else
D. in

[答案]:D
[解析]:不用于表示分支结构的是 in,所以选择D。

26. 以下选项中,不属于Python保留字的是

A. def
B. elif
C. type
D. import

[答案]:C
[解析]:type 是内置函数,不是 Python 的保留字。

27. 以下选项中,对程序的描述错误的是

A. 程序是由一系列函数组成的
B. 程序是由一系列代码组成的
C. 可以利用函数对程序进行模块化设计
D. 通过封装可以实现代码复用

[答案]:A
[解析]:程序是由一系列函数组成的,这种描述是不准确的,可以说程序是由一系列代码组成的,所以选项选择 A 选项。

28. 利用print()格式化输出,能够控制浮点数的小数点后两位输出的是

A. {.2}
B. {:.2}
C. {.2f}
D. {:.2f}

[答案]:D
[解析]:{:.2f}是可以控制浮点数的小数点后两位,D 选项是正确的。可以在解释器中测试:

29. 以下选项中可用作Python标识符的是

A. 3B9909
B. __
C. class
D. it’s

[答案]:B
[解析]:标识符开头不能使用数字,所以 A 选项错误;C 选项中 class 是保留字,不可以作为标识符;D选项中有特殊字符,也是不可以作为标识符的,所以也不能选择。只有B选项是符合标识符的命名规则,所以 B 选项是正确的选项。

30. 关于Python赋值语句,以下选项中不合法的是

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

[答案]:C
[解析]:括号中不应该 =,x = (y = 1) 是不合法的,所以选择 C 。

31. 以下选项中,不是Python语言保留字的是

A. try
B. None
C. int
D. del

[答案]:C
[解析]:int 是内置函数,不是Python语言的保留字,所以选择 C 选项。

32. 关于Python程序与缩进有关的说法中,以下选项中正确的是

A. 缩进统一为4个空格
B. 缩进是非强制的,仅为了提高代码的可读性
C. 缩进可以用在任何语句之后,表示语句间的包含的关系
D. 缩进在程序中长度统一且强制使用

[答案]:D
[解析]:缩进在程序中长度统一且强制使用,所以 D 选项是正确的。

33. 以下选项中可以访问字符串 s 从右侧向左第三个字符的是

A. s[3]
B. s[-3]
C. s[0:-3]
D. s[:-3]

[答案]:B
[解析]如果使用从右向前索引,字符的索引是从-1开始的。A 选项中 s[3] 获取的是字符串 s 的从左向右第四个字符,不满足题意;B选项中 s[-3] 获取的是字符串 s 从右向左第三个字符,满足题意;

34. Python3.0 正式发布的年份是

A. 1990
B. 2018
C. 2002
D. 2008

[答案]:D
[解析]:Python3.0正式的发布时间是2008年,所以选择 D 选项。

35. 以下选项中,不是 IPO 模型一部分的是

A. Input
B. Program
C. Output
D. Process

[答案]:B
[解析]:IPO模式是形成程序基本编写方法:IPO(input、process、output),即:输入、处理和输出。所以,该题正确选项为 B 。

36. 以下选项中,不是 Python 语言合法命名的是

A. MyGods
B. _MyGod
C. MyGod
D. 5MyGod

[答案]:D
[解析]:变量的命名第一个字符不可以使用数字,很明显 D 选项错误。

37. 在 Python 函数中,用于获取用户输入的是

A. get()
B. eval()
C. input()
D. print()

[答案]:C
[解析]:用户获取用户输入的是 input() 函数,所以选择 C 选项。

38. 给标识符关联名字的过程是

A. 生成语句
B. 表达
C. 赋值语句
D. 命名

[答案]:D
[解析]:给标识符关联名字的过程是命名,故选择 D 选项。

39. IDLE 菜单中创建新文件的快捷键是

A. Ctrl + N
B. Ctrl + F
C. Ctrl + ]
D. Ctrl + [

[答案]:A
[解析]:IDLE 菜单中创建文件的快捷键是 Ctrl+N,所以选择 A 选项。

40. IDLE 菜单中将选中区域缩进的快捷键是

A. Ctrl + C
B. Ctrl + ]
C. Ctrl + A
D. Ctrl + S

[答案]:B
[解析]:IDLE 菜单中将选中区域缩进的快捷键是 Ctrl + ],所以选择的是 B 选项。

41. IDLE 菜单中将选中区域取消缩进的快捷键是

A. Ctrl + C
B. Ctrl + [
C. Ctrl + V
D. Ctrl + O

[答案]:B
[解析]:IDLE菜单中将选中区域取消缩进的快捷键是 Ctrl + [ ,所以选择 B 选项。

42. IDLE 菜单中将选中区域注释的快捷键是

A. Alt + 3
B. Alt + 4
C. Alt + Z
D. Alt + G

[答案]:A
[解析]:IDLE菜单中将选中区域注释的快捷键是 Alt + 3,所以选择 A 选项。

43. IDLE 菜单中将选中区域取消注释的快捷键是

A. Alt + 3
B. Alt + 4
C. Alt + V
D. Alt + P

[答案]:B
[解析]:IDLE菜单中将选中区域取消注释的快捷键是 Alt + 4,所以选择 B 选项。

44. IDLE 菜单中将选中区域的空格替换为Tab的快捷键是

A. Alt + 5
B. Alt + 6
C. Alt + V
D. Alt + C

[答案]:A
[解析]:IDLE 菜单中将选中区域的空格替换为Tab的快捷键是 Alt + 5,所以选择 A 选项。

45. IDLE 菜单中将选中区域的 Tab 替换为空格的快捷键是

A. Alt + 5
B. Alt + 6
C. Alt + V
D. Alt + C

[答案]:B
[解析]:IDLE菜单中将选中区域的Tab替换为空格的快捷键是 Alt + 6,所以选择 B 选项。

46. 以下选项中不是 Python 打开方式的是

A. Office
B. Windows系统的命令行工具
C. 带图形界面的Python Shell-IDLE
D. 命令行版本的Python Shell-Python 3.x

[答案]:A
[解析]:Office 不能打开 Python 编辑器,所以选择 A 选项。

47. 查看 Python 是否安装成功的命令是

A. Win+R
B. exit()
C. PyCharm
D. python -v

[答案]:D
[解析]:查看Python是否安装成功的命令是 Python3.5 -v,所以选择 D 选项。

48. 以下选项中不是 Python IDE 的是

A. PyCharm
B. Spyder
C. R studio
D. Jupyter Notebook

[答案]:C
[解析]:R studio 是一个功能强大、节约成本的反删除和数据恢复的软件,不是 Python IDE(Python集成开发环境)。

49. Python为源文件制定系统默认字符编码的声明是

A. #coding:utf-8
B. #coding:GB2312
C. #coding:GBK
D. #coding:cp936

[答案]:A
[解析]:Python为源文件制定系统默认字符编码的声明是 #coding:utf-8,utf-8是一种针对Unicode的可变长字符编码,又称为万国码,可以统一页面显示中文简体、繁体及其它语言( 如英文、韩文、日文) 。

50. 下面代码的语法错误显示是

print "Hello World!"

A. NameError: name 'raw_print' is not defined
B. SyntaxError: Missing parentheses in call to 'print'
C. SynataxError: invalid character in identifier
D. <built-in function print>

[答案]:B
[解析]:在 Python3 中 print 函数后面必须要有括号,无括号会发生语法错误的提示,提示内容为调用 print 时缺少括号。在解释器中测试:

更多推荐

Python语法基础50题