python基础语法2,程序控制语句(简单易上手的python语法教学)(课后练习题)

如果知识点没巩固,可以回去看一下

习题知识点

1、题目

题目 1

关于 Python 程序与‘缩进’有关的说法中,以下选项中正确的是
A 缩进统一为 4 个空格
B 缩进是非强制的,仅为了提高代码可读性
C 缩进可以用在任何语句之后,表示语句间的包含关系
D 缩进在程序中长度统一且强制使用

题目 2

以下选项中关于 Python 语言中描述错误的是
A 程序由顺序结构、分支结构、循环结构和跳转结构组成。
B 分支结构使用if保留字
C Python 中if-else语句用来形成二分支结构
D Python 中if-elif-else语句描述多分支结构

题目 3

不是用于分支或循环结构的保留字是
while
else
for
def

题目 4

以下说法错误的是
A python 语言中的异常和错误是完全相同的概念
B 当程序发生异常时,如果解决,执行的结果很可能不正确
C 循环结构和函数代码块中也可以包含异常处理
D 异常处理使用的保留字有tryexcept

题目 5

关于异常处理说法错误的是
A 异常处理可以处理多种异常分别执行except代码
try语句块捕获到异常时,会执行except后面的语句
try捕获代码块中的异常,except异常执行后能够回到try代码块继续捕获
try代码块无异常时,except包含的代码块也不会被执行

题目 6

python 代码编写中缩进是一重要标志,关于缩进说法错误的是
A 缩进可以表示代码块的所属范围
B 缩进是可以嵌套的,从而形成多层缩进
C 判断、循环、函数等都能够通过缩进包含所属代码
D Python 用严格的缩进表示程序的格式框架,代码缩进严格采用 4 个空格

题目 7

属于循环结构中的保留字是
try
for
do
def

题目 8

以下说法正确的是
A 条件判断中3<5<7是可执行的,输出True
B 条件判断中3<5<7是可执行的,输出False
C 条件判断中3<5<7是不可执行的,
D 条件判断中3<5<7是不可执行的,抛出异常

题目 9

以下说法错误的是
A python 分支结构中if必须和else一同使用
if、else语句可以包含与另一个分支结构之中
if语句后面的判断如果为真,则执行if对包含的代码块
if所包含的代码块必须缩进,否则会出现异常或逻辑错误

题目 10

以下关于循环结构说法错误的是
A 遍历循环可以理解为从遍历结构中逐一提取元素,放在循环变量中。
for语句的循环次数由遍历结构中元素的个数决定
C 遍历结构可以是数字、字符串、列表类型
breakcontinue可以辅助控制循环

题目 11

执行如下代码输出的结果为:

for i in "list_write":
    if i == "i":
        continue
    print(i, end="") 

i
lst_wrte
lst_write
list_write

题目 12

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

try:
    n = input("请输入一个整数: ")
    def pow2(n):
        return n**2
    pow2(n)
except:
    print("程序执行错误") 

A 程序执行错误
25
C 程序没有任何输出
5

题目 13

执行如下代码输出的结果为:

a = "request"
for i in range(len(a)):
    print(a[-i],end="-") 

tseuqe
rtseuge
r-t-s-e-u-q-e-
t-s-e-u-q-e-r-

题目 14

执行如下代码,输入3后打印的信息为:

a = eval(input('请输入数字: '))
b = 5
if a in [3,6,9]:
    a += 1
    b -=1
if a in [4,8,12]:
    a +=2
    b-=2
print(a,b) 

4 4
6 4
6 2
6 3

题目 15

以下不是 python 所拥有的控制结构是
A 循环结构
B 顺序结构
C 跳转结构
D 程序异常

题目 16

以下关于分支结构的描述中,错误的是
A 二分支结构有一种紧凑形式,使用保留字ifelif实现
if语句中条件部分可以使用任何能够产生TrueFalse的语句和函数
if语句中语句块执行与否依赖于条件判断
D 多分支结构用于设置多个判断条件以及对应的多条执行路径

题目 17

执行如下代码,输入c时,执行后的结果为:

a = input("请输入: ")
ls = ['a','b','c','d','e']
for i in ls:
    if a == i:
        continue
    print(i, end = ' ') 

abcde
abde
ab
abc

题目 18

执行如下代码后i的结果为:

i = 1
while True:
    i +=3
    if i>10:
        break 

1
10
13
30

题目 19

以下说法错误的是
A 代码逻辑错误,也可以使用异常处理捕获
B python 使用保留字tryexcept进行异常处理
except后面增加错误类型,可以对不同的异常进行处理
D 只要程序可能异常抛出,无论哪种类型,都可以使用try+except捕捉这种异常

题目 20

以下代码执行后的结果为

0 == False 

0
False
True
1

题目 21

执行以下代码输出的内容为

for i in "Python":
    print(i, end = "") 

Python
P
python
p y t h o n(分行显示形式 )

题目 22

执行以下代码输出的内容为for i in range(5): print(i)
5
1 2 3 4 5
0 1 2 3 4 5
0 1 2 3 4

题目 23

执行以下代码输出的内容为

n = 0
while n<10:
    print(n, end = ", ")
    n += 3 

0
0,3,6,9,
0,3,6,9
0,3,6

题目 24

执行以下代码输出的内容为

s,idx = "PY",0
while idx < len(s):
    print("循环执行中:"+s[idx])
    idx += 1
else:
    s = "循环正常结束"
print(s) 

A 循环执行中: P
循环执行中: Y
循环正常结束
B 循环执行中: P
循环执行中: Y
C 循环正常结束
D 循环执行中: P
循环正常结束

题目 25

执行以下代码输出的内容为

for s in "PYTHON":
    if s == "Y":
        continue
    print(s,end="/") 

P/
P/T/H/O/N/
PYTHON
P/Y/T/H/O/N/

题目 26

执行以下代码输出的内容为

for s in "PYTHON":
    if s == "Y":
        break
    print(s,end="/") 

P/
P/T/H/O/N/
PYTHON
P/Y/T/H/O/N/

题目 27

执行以下代码后输入a,则输出的内容为

n = eval(input())
print(n) 

a
A
C 空
NameError: name 'a' is not defined

题目 28

执行以下代码后输入2,则输出的内容为

try:
    n = eval(input())
    print(n)
except:
    print("您输入的不是数字") 

A 空
B 您输入的不是数字
2
NameError: name 'a' is not defined

题目 29

执行以下代码后输入py,则输出为

try:
    n = eval(input())
    print(n)
except:
    print("您输入的不是数字") 

A 空
B 您输入的不是数字
2
NameError: name 'a' is not defined

题目 30

给出如下代码:

import random  # 导入库函数,将在第8章学习
num = random.randint(1,10)#给num赋值一个1~10之间的随机值整数。
while True:
    guess = input()
    i= int(guess)
    if i == num:
        print('你猜对了')
        break
    elif i < num:
        print('小了')
    elif i > num:
        print('大了') 

以下选项中描述错误的是
random.randint(1,10)生成[1,10]之间的整数
B 这段代码实现了简单的猜数字游戏
import random运行代码可以省略
while True:创建了一个无限循环

2、解析

题目 1

答案:D

解析:Python 中缩进是强制的,用于表示代码块所属关系,且同一代码块缩进长度需统一(通常 4 个空格,也可用制表符,但建议统一 );A 说 “统一为 4 个空格” 太绝对(也可用其他一致缩进 ),B “非强制” 错误,C “任何语句后” 错误(如简单单行语句后无需 ),所以选 D。

题目 2

答案:A

解析:Python 程序结构主要有顺序、分支(if 等 )、循环(forwhile )结构,一般无 “跳转结构”(类似其他语言 goto ,Python 不推荐 / 无对应保留字实现常规跳转 );B、C、D 对分支结构描述正确,所以选 A。

题目 3

答案:D

解析while(循环 )、else(可与循环、分支搭配 )、for(循环 )都用于分支或循环;def 是用于定义函数的保留字,不属于分支 / 循环结构,选 D。

题目 4

答案:A

解析:异常是程序运行时的错误(如除零错误 ),错误包含语法错误等(语法错误程序无法运行 ),二者概念不同;B、C、D 对异常的描述正确(异常不处理可能导致结果异常,循环、函数可加异常处理,try/except 用于异常处理 ),所以选 A。

题目 5

答案:C

解析try 捕获异常后,执行对应 except 代码,不会回到 try 继续捕获;A(多异常分 except 处理 )、B(try 捕到异常执行 except )、D(try 无异常则 except 不执行 )描述正确,所以选 C。

题目 6

答案:D

解析:Python 缩进用于表示代码块范围,可嵌套,判断、循环、函数等靠缩进包含代码,但缩进不一定严格 4 个空格(只要统一即可,如 3 个空格但全程一致也可,只是 4 个空格是规范 );D “严格采用 4 个空格” 错误,选 D。

题目 7

答案:B

解析for 是 Python 循环结构保留字;try(异常处理 )、do(Python 无此循环保留字,其他语言如 Java 有 do-while )、def(定义函数 ),所以选 B。

题目 8

答案:A

解析:Python 中 3<5<7 是合法连续比较,等价于 3<5 and 5<7 ,结果为 True ,所以选 A。

题目 9

答案:A

解析:Python 分支结构中 if 可单独使用(无 else ),满足条件执行 if 块,不满足则跳过;B(分支嵌套 )、C(if 条件为真执行代码块 )、D(if 代码块需缩进 )描述正确,所以选 A。

题目 10

答案:C

解析:遍历结构可以是字符串、列表、元组等可迭代对象,数字(如整数 )不是可迭代对象,不能直接用于 for 遍历;A、B、D 对循环结构描述正确,所以选 C。

题目 11

答案:B

解析:遍历字符串 "list_write" ,遇到 'i' 时 continue 跳过,不打印 'i' ,所以输出 lst_wrte ,选 B。

题目 12

答案:A

解析input 获取的 n 是字符串,pow2 函数中 n**2 要求 n 是数值类型,执行 pow2(n) 会报错,触发 except ,输出 “程序执行错误”,选 A。

题目 13

答案:C

解析range(len(a)) 中 len(a)=7 ,i 取 0 到 6 ,a[-i] :i=0 时 a[0]='r' ,i=1 时 a[-1]='t' ,i=2 时 a[-2]='s' 等,拼接输出 r-t-s-e-u-q-e- ,选 C(原考生选 D 错误 )。

题目 14

答案:C

解析:输入 3 ,第一个 if 满足,a=4 ,b=4 ;第二个 if 满足(4 在 [4,8,12] ),a=6 ,b=2 ,输出 6 2 ,选 C。

题目 15

答案:C

解析:Python 控制结构有顺序、分支(if 等 )、循环(forwhile ),无 “跳转结构”(无类似 goto 的常规用法 );“程序异常” 不是控制结构,题目问 “不是控制结构”,但按选项,C 跳转结构更符合,原考生选 D 错误,正确是 C。

题目 16

答案:A

解析:二分支紧凑形式是 if-else ,if-elif-else 是多分支;B、C、D 对分支结构描述正确,所以选 A(原考生选 B 错误 )。

题目 17

答案:B

解析:输入 c ,遍历列表 ls ,遇到 'c' 跳过,打印其他元素 a b d e (空格分隔 ),即 abde ,选 B。

题目 18

答案:C

解析i 初始 1 ,循环中 i +=3 :i=4 → 7 → 10 → 13 ,当 i>10 (13 时 )break ,最终 `i=1

题目 19

答案:A
解析:语法错误(如拼写错误 )在程序运行前就会被检测到,无法用 try - except 捕获;逻辑错误(如计算逻辑不对 )若未触发异常(如除零等 ),try - except 也无法处理 。B、C、D 对异常处理描述正确,逻辑错误本身并非异常抛出场景,所以选 A。

题目 20

答案:C
解析:在 Python 中,0 等价于 False (布尔值转换 ),所以 0 == False 结果为 True ,选 C(原考生未作答,按语法解析 )。

题目 21

答案:A
解析for 遍历字符串 "Python" ,逐个字符输出且无间隔(end = "" ),结果为 Python ,选 A(原考生选 D 错误 )。

题目 22

答案:D
解析range(5) 生成 0 到 4 的整数序列,循环输出每个元素,结果是 0 1 2 3 4 ,选 D。

题目 23

答案:B
解析n 初始 0 ,循环中 n 依次为 0369 (下一次 n=12 不满足 <10 ),输出带逗号和空格,结果 0,3,6,9, ,选 B(原考生选 C 错误 )。

题目 24

答案:A
解析while 循环遍历 s ("PY" ),输出两次 “循环执行中: P” 和 “循环执行中: Y” ;循环正常结束(未被 break 打断 ),执行 else 块,s 被赋值 “循环正常结束”,最终输出对应内容,选 A。

题目 25

答案:B
解析:遍历 "PYTHON" ,遇到 'Y' 跳过,其他字符(PTHON )用 / 连接输出,结果 P/T/H/O/N/ ,选 B。

题目 26

答案:A
解析:遍历 "PYTHON" ,遇到 'Y' 时 break 跳出循环,仅输出 P 后加 / ,结果 P/ ,选 A。

题目 27

答案:D
解析eval 执行输入字符串,输入 a 会因未定义变量 a 报错 NameError ,选 D。

题目 28

答案:C
解析:输入 2 ,eval 转换为整数,print(n) 输出 2 ,无异常,选 C。

题目 29

答案:B
解析:输入 py ,eval 执行报错(非合法表达式 ),触发 except ,输出 “您输入的不是数字”,选 B。

题目 30

答案:C
解析:代码中使用了 random.randint 函数,必须 import random 导入库才能使用,不能省略;A、B、D 描述正确,选 C。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值