鱼C论坛

 找回密码
 立即注册
查看: 222|回复: 9

[快问快答] 第030讲:字符串(IV)

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

使用道具 举报

发表于 2026-1-23 10:57:59 | 显示全部楼层
@FishC 下列代码的输出结果是什么?

print(repr("  a  b  ".strip()))

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

使用道具 举报

发表于 2026-1-23 10:58:39 | 显示全部楼层
zzj375100270 发表于 2026-01-23 10:57
@FishC 下列代码的输出结果是什么?

print(repr("  ...

下列代码的输出结果是什么?

print(repr("  a  b  ".strip()))

A. 'ab'
B. 'a b'
C. 'a  b'
D. '  a  b  '


答案:C

解释:
"  a  b  ".strip() 会移除字符串开头和结尾的空格,但保留中间的空格。因此,它返回 'a  b'(a 和 b 之间有两个空格)。
repr() 函数返回字符串的官方表示,print() 输出这个表示,所以最终输出为 'a  b'

例如,在 Python 中运行:

  1. >>> print(repr("  a  b  ".strip()))
  2. 'a  b'
复制代码

输出结果与选项 C 一致。

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

使用道具 举报

发表于 2026-2-26 14:42:10 | 显示全部楼层
@FishC 下列代码的输出结果是什么?

print(repr("  a  b  ".strip()))

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

使用道具 举报

发表于 2026-2-26 14:42:44 | 显示全部楼层
40岁学编程 发表于 2026-02-26 14:42
@FishC 下列代码的输出结果是什么?

print(repr("  ...


答案: C. 'a  b'

解释:
strip() 方法会移除字符串开头和结尾的空白字符(如空格、换行符等),但不会影响字符串中间的空白。对于字符串 "  a  b  ",移除开头和结尾的空格后,得到 "a  b"(其中 a 和 b 之间有两个空格)。repr() 函数返回该字符串的官方表示形式,即用引号括起来的 'a  b'

因此,
  1. print(repr("  a  b  ".strip()))
复制代码
的输出结果为 'a  b',对应选项 C。

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

使用道具 举报

发表于 2026-3-14 11:04:38 | 显示全部楼层
又学到新知识了,rep()返回字符串的官方表示
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2026-3-24 07:24:37 | 显示全部楼层
@FishC 执行以下代码后,变量 s 的值是?

s = "\t\nPython\n".lstrip()

A. "Python\n"
B. "\t\nPython"
C. "Python"
D. "\t\nPython\n"
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2026-3-24 07:25:04 | 显示全部楼层
haly 发表于 2026-03-24 07:24
@FishC 执行以下代码后,变量 s 的值是?

s = "\t\ ...

问题:执行以下代码后,变量 s 的值是?

  1. s = "\t\nPython\n".lstrip()
复制代码


选项:
A. "Python\n"
B. "\t\nPython"
C. "Python"
D. "\t\nPython\n"


解答:

lstrip() 方法用于移除字符串左侧(开头)的空白字符(包括空格、制表符 \t、换行符 \n 等),直到遇到第一个非空白字符为止。

给定字符串:"\t\nPython\n" 的字符序列为:制表符、换行符、'P'、'y'、't'、'h'、'o'、'n'、换行符。

调用 .lstrip() 后,左侧的制表符和换行符被移除,剩下 "Python\n",即 "Python" 后面跟一个换行符。

因此,变量 s 的值为 "Python\n",对应选项 A。

故答案为 A

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

使用道具 举报

发表于 2026-3-24 07:26:31 | 显示全部楼层
@FishC 这段代码将依次打印什么内容?

s = "a  b"
print(s.split())
print(s.split(" "))

A. 两行都输出 ['a', 'b']
B. 两行都输出 ['a', '', 'b']
C. ['a', 'b'] 然后 ['a', '', 'b']
D. ['a', '', 'b'] 然后 ['a', 'b']
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2026-3-24 07:27:14 | 显示全部楼层
haly 发表于 2026-03-24 07:26
@FishC 这段代码将依次打印什么内容?

s = "a  b"
...

@FishC 这段代码将依次打印什么内容?

s = "a  b"
print(s.split())
print(s.split(" "))

A. 两行都输出 ['a', 'b']
B. 两行都输出 ['a', '', 'b']
C. ['a', 'b'] 然后 ['a', '', 'b']
D. ['a', '', 'b'] 然后 ['a', 'b']


答案:C. ['a', 'b'] 然后 ['a', '', 'b']

解释:
字符串 s = "a  b" 中包含两个空格。

-
  1. s.split()
复制代码
不指定分隔符时,默认以任意空白字符(如空格、制表符等)分割,且连续空白会被合并为一个分隔符,因此输出 ['a', 'b']
-
  1. s.split(" ")
复制代码
指定单个空格为分隔符,会严格按每个空格分割,连续空格之间会产生空字符串,因此输出 ['a', '', 'b']

所以,第一行打印 ['a', 'b'],第二行打印 ['a', '', 'b']

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

使用道具 举报

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

本版积分规则

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

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

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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