鱼C论坛

 找回密码
 立即注册
楼主: 小甲鱼

[快问快答] 第009讲:数字类型(下)

[复制链接]
发表于 2025-12-17 20:18:46 | 显示全部楼层
零基础入门学习Python封面
《零基础入门学习Python》
(最新版)
小甲鱼 著
立即购买
@FishC int('520.0') 的结果是?
A. '520'
B. 520.0
C. 520
D. 报错
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-12-17 20:19:27 | 显示全部楼层
buyaotuofa 发表于 2025-12-17 20:18
@FishC int('520.0') 的结果是?
A. '520'
B. 520.0 ...


正确答案是 D. 报错。

解释:在 Python 中,int() 函数用于将字符串或数字转换为整数。当参数是字符串时,它必须是一个有效的十进制整数字符串(可以包含正负号,但不能包含小数点或其他非数字字符)。字符串 '520.0' 包含小数点,因此会引发 ValueError 异常。

例如:

  1. int('520')   # 返回 520
  2. int('520.0') # 引发 ValueError: invalid literal for int() with base 10: '520.0'
复制代码


所以,int('520.0') 的结果是报错。

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

使用道具 举报

发表于 2026-2-2 22:22:28 | 显示全部楼层
@FishC abs(1 + 2j) 的结果是?
A. 1
B. 2
C. 2.23606797749979
D. 报错
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2026-2-2 22:23:00 | 显示全部楼层
爱吹的牛 发表于 2026-02-02 22:22
@FishC abs(1 + 2j) 的结果是?
A. 1
B. 2
C. 2.23 ...


abs(1 + 2j) 的结果是 C. 2.23606797749979。

解释:在 Python 中,对于复数,abs() 函数返回该复数的模(即绝对值)。计算方式为实部的平方加虚部的平方再开平方根。对于复数 1 + 2j,实部为 1,虚部为 2,因此模为 sqrt(1^2 + 2^2) = sqrt(5) ≈ 2.23606797749979。

示例代码:
  1. >>> abs(1 + 2j)
  2. 2.23606797749979
复制代码


所以,选项 C 正确。

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

使用道具 举报

发表于 2026-3-3 23:39:50 | 显示全部楼层
@FishC abs(1 + 2j) 的结果是?
A. 1
B. 2
C. 2.23606797749979
D. 报错
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2026-3-3 23:40:20 | 显示全部楼层
coision 发表于 2026-03-03 23:39
@FishC abs(1 + 2j) 的结果是?
A. 1
B. 2
C. 2.23 ...

@FishC abs(1 + 2j) 的结果是?

答案是 C. 2.23606797749979。

解释:在 Python 中,abs() 函数对复数计算其模(大小)。复数 1 + 2j 的模为 sqrt(1^2 + 2^2) = sqrt(5) ≈ 2.23606797749979。

示例代码:


  1. result = abs(1 + 2j)
  2. print(result)  # 输出 2.23606797749979
复制代码


因此,选项 C 正确。

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

使用道具 举报

发表于 2026-3-3 23:41:03 | 显示全部楼层
@FishC abs(1 + 2j) 的结果是?
A. 1
B. 2
C. 2.23606797749979
D. 报错
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2026-3-3 23:41:39 | 显示全部楼层
coision 发表于 2026-03-03 23:41
@FishC abs(1 + 2j) 的结果是?
A. 1
B. 2
C. 2.23 ...


答案:C. 2.23606797749979

解释:在Python中,abs() 函数用于复数时会返回其模(magnitude)。对于复数 1 + 2j,模的计算公式为 √(实部^2 + 虚部^2)。

计算过程:
实部 = 1,虚部 = 2
模 = √(1^2 + 2^2) = √(1 + 4) = √5 ≈ 2.23606797749979

示例代码:

  1. result = abs(1 + 2j)
  2. print(result)  # 输出:2.23606797749979
复制代码


因此,abs(1 + 2j) 的结果是 2.23606797749979。

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

使用道具 举报

发表于 6 天前 | 显示全部楼层
@FishC 表达式 x == (x // y) * y + (x % y) 成立吗?
A. 只对正数成立
B. 只对负数成立
C. 总是成立
D. 不成立
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 6 天前 | 显示全部楼层
121749466 发表于 2026-04-03 22:09
@FishC 表达式 x == (x // y) * y + (x % y) 成立吗? ...


表达式 x == (x // y) * y + (x % y) 在 Python 中总是成立(前提是 y ≠ 0),因此正确答案是 C. 总是成立。

这是因为 Python 的整数除法(//)和取模运算(%)遵循数学恒等式:对于任意整数 x 和 y(y ≠ 0),商和余数满足 x = (x // y) * y + (x % y)

例如:

  1. x = 10
  2. y = 3
  3. print(x == (x // y) * y + (x % y))  # 输出 True

  4. x = -10
  5. y = 3
  6. print(x == (x // y) * y + (x % y))  # 输出 True

  7. x = 10
  8. y = -3
  9. print(x == (x // y) * y + (x % y))  # 输出 True
复制代码


无论 x 和 y 是正数还是负数,该表达式均成立。

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-4-9 17:21

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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