鱼C论坛

 找回密码
 立即注册
查看: 224|回复: 14

[快问快答] 第034讲:序列(中)

[复制链接]
发表于 2026-1-25 18:38:55 | 显示全部楼层 |阅读模式
购买主题 本主题需向作者支付 5 鱼币 才能浏览
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2026-3-12 15:46:47 | 显示全部楼层
@FishC 执行以下代码后,输出结果是什么?

nums = [9, 1, 4]
result = nums.sort()
print(result)

A. None
B. [1, 4, 9]
C. [9, 1, 4]
D. 会报错,因为 sort() 没有返回值
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2026-3-12 15:47:10 | 显示全部楼层
yzz27814 发表于 2026-03-12 15:46
@FishC 执行以下代码后,输出结果是什么?

nums =  ...

执行以下代码后,输出结果是什么?

nums = [9, 1, 4]
result = nums.sort()
print(result)

A. None
B. [1, 4, 9]
C. [9, 1, 4]
D. 会报错,因为 sort() 没有返回值


在 Python 中,列表的 sort() 方法是原地排序的,它会直接修改原列表,但方法本身返回 None。所以,result = nums.sort() 会将 None 赋值给 result,而 nums 会被排序为 [1, 4, 9]

执行代码后,print(result) 输出的是 None

因此,正确答案是 A. None

以下是代码执行过程的示例:

  1. >>> nums = [9, 1, 4]
  2. >>> result = nums.sort()
  3. >>> print(result)
  4. None
  5. >>> print(nums)  # 注意:此时 nums 已被排序
  6. [1, 4, 9]
复制代码


如果想获得排序后的新列表而不修改原列表,可以使用 sorted() 函数:
  1. >>> nums = [9, 1, 4]
  2. >>> result = sorted(nums)
  3. >>> print(result)
  4. [1, 4, 9]
复制代码


以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2026-3-12 15:50:25 | 显示全部楼层
@FishC 执行以下代码后,输出结果是什么?

names = ['Li', 'FishC', 'Yu']
print(sorted(names, key=len, reverse=True))

A. ['Li', 'Yu', 'FishC']
B. ['Yu', 'Li', 'FishC']
C. ['FishC', 'Li', 'Yu']
D. ('FishC', 'Li', 'Yu')
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2026-3-12 15:50:53 | 显示全部楼层
yzz27814 发表于 2026-03-12 15:50
@FishC 执行以下代码后,输出结果是什么?

names = ...


执行以下代码后,输出结果是:

  1. >>> names = ['Li', 'FishC', 'Yu']
  2. >>> print(sorted(names, key=len, reverse=True))
  3. ['FishC', 'Li', 'Yu']
复制代码


因此正确答案是 C. ['FishC', 'Li', 'Yu']

解释:sorted() 函数根据 key=len(按字符串长度)排序,reverse=True 表示降序排列。'FishC' 长度为 5,'Li' 和 'Yu' 长度均为 2,所以 'FishC' 排在最前面。长度相同时,sorted() 保持原始顺序,因此 'Li' 在 'Yu' 之前。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2026-3-12 15:51:28 | 显示全部楼层
@FishC 下面哪一行代码会抛出 TypeError?
A. min([], default=99)
B. max((), default=-1)
C. min(3, 1, 2, default=0)
D. max([-2, 1, -3], key=abs)
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2026-3-12 15:52:06 | 显示全部楼层
yzz27814 发表于 2026-03-12 15:51
@FishC 下面哪一行代码会抛出 TypeError?
A. min(,  ...


选项 C 会抛出 TypeError。

解释:

  1. min(3, 1, 2, default=0)
复制代码
会抛出 TypeError,因为当 min() 函数以多个位置参数形式调用时,不支持 default 参数。default 参数仅适用于当第一个参数是可迭代对象且为空的情况,而多个位置参数调用时,函数直接比较这些参数,无需 default 参数。

其他选项说明:
- A:min([], default=99) 返回 99,不会报错。
- B:max((), default=-1) 返回 -1,不会报错。
- D:max([-2, 1, -3], key=abs) 返回 -3,不会报错。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 7 天前 | 显示全部楼层
@FishC 执行以下代码后,输出结果是什么?

s = str((1, 2))
print(s[0])

A. 1
B. "1"
C. (
D. (1, 2)
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 7 天前 | 显示全部楼层
haly 发表于 2026-03-25 12:32
@FishC 执行以下代码后,输出结果是什么?

s = str ...


执行代码后,输出结果是左括号 "("。

解释:
- `(1, 2)` 是一个元组,使用 `str()` 函数将其转换为字符串,得到字符串 `"(1, 2)"`。
- 字符串 `s` 的第一个字符(索引 0)是 `'('`,因此 `print(s[0])` 输出 `(`。

正确答案是 C. (

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 7 天前 | 显示全部楼层
@FishC 在比较字符大小时,下列说法正确的是?
A. 'a' > 'A'
B. 'A' > 'a'
C. 'a' == 'A'
D. 大小写字母无法比较
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 7 天前 | 显示全部楼层
haly 发表于 2026-03-25 12:32
@FishC 在比较字符大小时,下列说法正确的是?
A. 'a ...

在比较字符大小时,下列说法正确的是?
A. 'a' > 'A'
B. 'A' > 'a'
C. 'a' == 'A'
D. 大小写字母无法比较


正确答案是:A. 'a' > 'A'

解释:在计算机中,字符比较基于它们的编码值(如 ASCII 或 Unicode)。小写字母 'a' 的 ASCII 码值为 97,大写字母 'A' 的 ASCII 码值为 65。由于 97 > 65,因此 'a' > 'A' 为真。

其他选项分析:
- B:错误,因为 'A' 的码值小于 'a'
- C:错误,因为 'a''A' 码值不同,不相等。
- D:错误,大小写字母可以通过码值直接比较。

在 Python 中验证:

  1. print('a' > 'A')  # 输出 True
  2. print('A' > 'a')  # 输出 False
  3. print('a' == 'A') # 输出 False
复制代码


以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 7 天前 | 显示全部楼层
@FishC 执行以下代码后,输出结果是什么?

result = str([1, 2, 3])

A. [1, 2, 3]
B. '123'
C. '[1, 2, 3]'
D. ['1', '2', '3']
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 7 天前 | 显示全部楼层
haly 发表于 2026-03-25 12:34
@FishC 执行以下代码后,输出结果是什么?

result  ...


str([1, 2, 3]) 会将列表转换为字符串,得到列表的字符串表示形式,即包含方括号和逗号的字符串 '[1, 2, 3]'。

因此,正确答案是 C。

验证如下:

  1. >>> result = str([1, 2, 3])
  2. >>> print(result)
  3. [1, 2, 3]
复制代码

注意:print(result) 输出时不会显示外层的引号,但 result 本身是字符串,其值为 '[1, 2, 3]'。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 7 天前 | 显示全部楼层
@FishC 执行以下代码后,输出结果是什么?

print(min('aBz'))

A. a
B. B
C. z
D. 报错
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 7 天前 | 显示全部楼层
haly 发表于 2026-03-25 12:36
@FishC 执行以下代码后,输出结果是什么?

print(m ...


执行 print(min('aBz')) 后,输出结果是 B

解释:min 函数作用于字符串时,会逐个比较字符的 Unicode 码点,返回最小的字符。在字符串 'aBz' 中,字符的码点顺序为:'B'(66)< 'a'(97)< 'z'(122),因此最小的字符是 'B'

所以正确答案是:B

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-4-1 13:08

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表