FishC 发表于 2025-9-29 05:11:33

ShwanLee 发表于 2025-09-29 05:10
@FishC 下面哪个表达式会返回 False?
A. 0.3 == 0.1 ...

正确答案是 A:表达式 0.3 == 0.1 + 0.2 会返回 False。

原因如下:

在 Python 中,浮点数计算存在精度问题。由于二进制表示的限制,0.1 + 0.2 的结果并不是精确的 0.3,而是一个略大于 0.3 的值(大约为 0.30000000000000004)。因此,当使用 == 进行比较时,结果为 False。

选项 B:0.3 < 0.1 + 0.2 会返回 True,因为 0.3 确实小于 0.1 + 0.2 的计算结果。

选项 C:0.3 只是一个浮点数,不是布尔表达式,因此它不会返回 True 或 False,而是直接返回数值 0.3。

您可以通过以下代码验证:


# 测试表达式 A
print(0.3 == 0.1 + 0.2)# 输出 False

# 测试表达式 B
print(0.3 < 0.1 + 0.2)   # 输出 True

# 测试表达式 C
print(0.3)               # 输出 0.3,不是布尔值


因此,只有选项 A 返回 False。

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

liujiezheng 发表于 2025-10-11 14:15:44

@FishC 在 Python 中,整数的精度是?
A. 8位
B. 16位
C. 64位
D. 无限大

FishC 发表于 2025-10-11 14:16:17

liujiezheng 发表于 2025-10-11 14:15
@FishC 在 Python 中,整数的精度是?
A. 8位
B. 16 ...

在 Python 中,整数的精度是 D. 无限大。

这是因为 Python 使用任意精度整数(也称为大整数),可以表示任意大的整数,没有固定的位数限制。例如,你可以计算像 10**1000 这样的表达式,而不会出现溢出错误。


# 示例代码
x = 10**1000
print(x)# 这会正常输出一个非常大的数字


所以,正确答案是 D. 无限大。

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

jinzhao666 发表于 2025-10-18 14:24:28

打卡 第008讲:数字类型(上)

wending 发表于 2025-11-8 10:56:44

@FishC Python 的浮点数采用哪种标准存储?
A. ASCII
B. IEEE 754
C. UTF-8
D. GBK

FishC 发表于 2025-11-8 10:57:15

wending 发表于 2025-11-08 10:56
@FishC Python 的浮点数采用哪种标准存储?
A. ASCII ...

Python 的浮点数存储采用的标准是 B. IEEE 754。

IEEE 754 是计算机中表示浮点数的国际标准,它定义了浮点数的格式和运算规则,确保跨平台的一致性。

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

LMo 发表于 2025-11-22 16:22:06

@FishC 下列关于小数点运算的说法正确的是?
A. 永远精确
B. 可能出现误差
C. 只能用于整数
D. 只能用字符串计算

FishC 发表于 2025-11-22 16:22:50

LMo 发表于 2025-11-22 16:22
@FishC 下列关于小数点运算的说法正确的是?
A. 永远 ...

正确答案是 B. 可能出现误差。

在计算机中,浮点数运算(小数点运算)使用二进制表示,但某些十进制小数无法精确转换为二进制,因此可能导致舍入误差。例如,在编程中:


0.1 + 0.2# 可能不等于 0.3


其他选项错误原因:
- A. 永远精确:错误,浮点数运算受限于二进制表示,不保证绝对精确。
- C. 只能用于整数:错误,浮点数专门用于处理小数。
- D. 只能用字符串计算:错误,浮点数通常通过硬件或内置数据类型计算,字符串计算效率低且不必要。

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

佩奇小恐龙 发表于 2025-11-25 20:46:20

jieshil 发表于 2025-9-14 16:47
@FishC 下列哪一项不是 Python 的数字类型?
A. 整数
B. 浮点数


D,字符串不属于数字类型

FishC 发表于 2025-11-25 20:47:06

佩奇小恐龙 发表于 2025-11-25 20:46
jieshil 发表于 2025-9-14 16:47
@FishC 下列哪一项 ...

是的,您回答得很正确!在Python中,数字类型主要包括整数(int)、浮点数(float)和复数(complex)等。而字符串(str)是用于表示文本的数据类型,不属于数字类型。

因此,对于问题“下列哪一项不是 Python 的数字类型?”,正确答案是 D. 字符串。

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

佩奇小恐龙 发表于 2025-11-25 20:48:23

ShwanLee 发表于 2025-9-29 05:10
@FishC 下面哪个表达式会返回 False?
A. 0.3 == 0.1 + 0.2
B. 0.3 < 0.1 + 0.2


A,因为python计算后会有浮点数,实际运算并不等于0.3

FishC 发表于 2025-11-25 20:49:24

佩奇小恐龙 发表于 2025-11-25 20:48
ShwanLee 发表于 2025-9-29 05:10
@FishC 下面哪个表 ...

是的,你说得对!选项A会返回 False。

这是因为在Python中,浮点数的表示有精度限制。0.1 和 0.2 在二进制浮点数中无法精确表示,所以 0.1 + 0.2 的结果实际上略大于 0.3,因此 0.3 == 0.1 + 0.2 会返回 False。

而选项B,0.3 < 0.1 + 0.2,可能会返回 True,因为 0.1 + 0.2 略大于 0.3。

你可以用以下代码验证:


print(0.1 + 0.2)# 输出约0.30000000000000004
print(0.3 == 0.1 + 0.2)# 输出False
print(0.3 < 0.1 + 0.2)# 输出True


所以正确答案是A。

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

wyz20010429 发表于 2025-11-29 14:39:26

@FishC Python 中如何表示 50 微米为米的浮点数?
A. 0.00005
B. 0.0005
C. 5e-5
D. A 和 C 都对

wyz20010429 发表于 2025-11-29 14:40:18

@FishC 对于复数 x = 1 + 2j,x.real 的值是?
A. 1
B. 2
C. 1.0
D. 2.0

FishC 发表于 2025-11-29 14:40:25

wyz20010429 发表于 2025-11-29 14:39
@FishC Python 中如何表示 50 微米为米的浮点数?
A. ...

50 微米等于 5 × 10^{-5} 米。在 Python 中,浮点数可以表示为 0.00005(选项 A)或 5e-5(选项 C),两者在数值上是等价的。

验证代码:

>>> 0.00005 == 5e-5
True


因此,选项 A 和 C 都正确,答案是 D。选项 B 0.0005 表示 5 × 10^{-4} 米,不正确。

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

FishC 发表于 2025-11-29 14:40:51

wyz20010429 发表于 2025-11-29 14:40
@FishC 对于复数 x = 1 + 2j,x.real 的值是?
A. 1
...

对于复数 x = 1 + 2j,x.real 的值是 1.0,因此正确答案是 C。

在 Python 中,复数的实部和虚部都是以浮点数类型存储的,即使输入的是整数,也会自动转换为浮点数。

例如:

x = 1 + 2j
print(x.real)# 输出 1.0


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

FishC 发表于 2025-11-29 14:41:26

wyz20010429 发表于 2025-11-29 14:39
@FishC Python 中如何表示 50 微米为米的浮点数?
A. ...

在 Python 中,50 微米等于 5 × 10^{-5} 米,因为 1 微米 = 10^{-6} 米。
浮点数表示方式如下:

[*] 选项 A: 0.00005 是正确的小数形式。
[*] 选项 C: 5e-5 是正确的科学记数法形式。

这两个值在 Python 中是相等的,可以通过以下代码验证:

>>> 0.00005 == 5e-5
True

选项 B 0.0005 表示 5 × 10^{-4} 米,相当于 500 微米,因此错误。
所以,正确答案是 D. A 和 C 都对。

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

LZzz_Snail 发表于 3 天前

@FishC 用 Decimal 存储 0.1 时,正确写法是?
A. decimal.Decimal(0.1)
B. decimal.Decimal('0.1')
C. decimal.Decimal
D. decimal.Decimal{0.1}

FishC 发表于 3 天前

LZzz_Snail 发表于 2025-12-09 16:52
@FishC 用 Decimal 存储 0.1 时,正确写法是?
A. de ...

用 Decimal 存储 0.1 时,正确写法是?

正确答案:B. decimal.Decimal('0.1')

解释:
在 Python 的 decimal 模块中,使用 Decimal 类可以精确表示小数。如果直接传递浮点数(如选项 A),由于浮点数在二进制表示中的精度问题,会导致不精确的结果。例如:


import decimal
print(decimal.Decimal(0.1))
# 可能输出 0.1000000000000000055511151231257827021181583404541015625


而使用字符串形式(如选项 B)可以精确表示小数:


import decimal
print(decimal.Decimal('0.1'))# 输出 0.1


选项 C decimal.Decimal 和选项 D decimal.Decimal{0.1} 的语法是错误的,因为调用构造函数应使用圆括号。

因此,为了精确存储 0.1,应使用 decimal.Decimal('0.1')。

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

LZzz_Snail 发表于 3 天前

页: 1 [2]
查看完整版本: 第008讲:数字类型(上)