小甲鱼 发表于 2025-7-27 05:00:55

已有 10 人购买  本主题需向作者支付 5 鱼币 才能浏览 购买主题

月影婆娑 发表于 2025-8-4 19:21:28

@FishC 关于range的步长参数,正确的是?
A. 可以为0
B. 可以为负数
C. 只能为正数
D. 必须大于1

FishC 发表于 2025-8-4 19:22:28

月影婆娑 发表于 2025-08-04 19:21
@FishC 关于range的步长参数,正确的是?
A. 可以为0 ...

关于range函数的步长参数(step),正确的是选项B:可以为负数。

### 简要解释:
- **步长可以为负数**:当步长为负时,会生成递减序列。例如:`range(5, 0, -1)` 生成序列 5, 4, 3, 2, 1。
- **其他选项错误**:
- A. 不能为0:如果步长为0,Python会抛出 `ValueError: range() arg 3 must not be zero`。
- C. 只能为正数:错误,步长可以为负数。
- D. 必须大于1:错误,步长可以是1(如 `range(0, 5, 1)`)或负数。

在Python中,步长必须是整数(正、负整数均可),但不能为0。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

月影婆娑 发表于 2025-8-4 19:23:27

@FishC for循环嵌套的主要作用是?
A. 减小代码长度
B. 处理多维数据或复杂问题
C. 只能用于字符串
D. 只用于break和continue

FishC 发表于 2025-8-4 19:23:58

月影婆娑 发表于 2025-08-04 19:23
@FishC for循环嵌套的主要作用是?
A. 减小代码长度
...

关于for循环嵌套的作用,正确的答案是:

B. 处理多维数据或复杂问题


详细解释:
1. 核心作用:嵌套循环主要用于处理需要多层遍历的场景,例如:
   - 二维数组(矩阵)的行列操作
   - 生成组合数据(如坐标点、排列组合)
   - 多层数据结构的遍历(如文件夹嵌套)

2. 其他选项分析:
   
   [*]A:嵌套循环通常会增加代码长度,而非减小
   [*]C:可处理任何可迭代对象(数字、列表、字典等),不限于字符串
   [*]D:break和continue是循环控制语句,与嵌套无必然关联
   


简单示例:
用嵌套循环打印3×3矩阵:

for i in range(3):      # 外层控制行
    for j in range(3):# 内层控制列
      print(f"({i},{j})", end=" ")
    print()             # 换行

输出:

(0,0) (0,1) (0,2)
(1,0) (1,1) (1,2)
(2,0) (2,1) (2,2)


以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

姆姆 发表于 2025-8-6 10:42:27

@FishC for i in range(2, 5):
for j in range(1, i):
    print(i, j)
这段代码一共输出几次?
A. 3
B. 4
C. 5
D. 6

FishC 发表于 2025-8-6 10:43:00

姆姆 发表于 2025-08-06 10:42
@FishC for i in range(2, 5):
for j in range(1,...

这段代码的输出次数分析如下:

i 的取值是 2, 3, 4(range(2,5) 生成 2,3,4):

[*]当 i=2:内层循环 range(1,2) 生成 1 → 1 次输出
[*]当 i=3:内层循环 range(1,3) 生成 1,2 → 2 次输出
[*]当 i=4:内层循环 range(1,4) 生成 1,2,3 → 3 次输出

总次数 = 1 + 2 + 3 = 6 次

完整输出内容:

2 1
3 1
3 2
4 1
4 2
4 3


正确答案:D. 6

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

miggoshit 发表于 2025-8-10 19:15:36

@FishC for i in range(2, 5):
for j in range(1, i):
    print(i, j)
这段代码一共输出几次?
A. 3
B. 4
C. 5
D. 6

FishC 发表于 2025-8-10 19:17:02

miggoshit 发表于 2025-08-10 19:15
@FishC for i in range(2, 5):
for j in range(1,...

让我们一步步分析这段代码的执行过程:

for i in range(2, 5):
for j in range(1, i):
    print(i, j)

- 外层循环 i 从 2 到 4(因为 range(2, 5) 包含 2、3、4)。
- 内层循环 j 的范围是 range(1, i),具体取决于 i 的值:
- 当 i = 2 时,j 从 1 到 1(range(1, 2) 只有 1 个值),输出 1 次。
- 当 i = 3 时,j 从 1 到 2(range(1, 3) 有 2 个值),输出 2 次。
- 当 i = 4 时,j 从 1 到 3(range(1, 4) 有 3 个值),输出 3 次。

总输出次数:1 + 2 + 3 = 6。

因此,正确答案是 D. 6。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

hanjinzhu 发表于 2025-8-12 16:21:45

{:13_447:}
页: [1]
查看完整版本: 第018讲:了不起的分支和循环(V)