float(浮点数)

一、认识浮点数

1. 什么是浮点数?

  • 生活案例
    • 你的身高:1.75米
    • 披萨价格:39.99元
    • 体温:36.5℃
  • 编程定义:带小数点的数字(称为”float”)
  • 特点
    • 可以表示分数(如1/2 = 0.5)
    • 有精度限制(计算机存储的特殊性)

2. 与整型的区别

# 对比示例
age = 25      # 整型(没有小数点)
height = 1.75 # 浮点型(带小数点)

二、创建浮点数变量

1. 直接赋值

price = 9.99
temperature = -3.5
pi = 3.1415926

2. 科学计数法

earth_mass = 5.972e24  # 5.972×10²⁴
virus_size = 1.2e-7     # 0.00000012
print(earth_mass)       # 输出5972000000000000000000000.0

3. 从整型转换

my_int = 5
my_float = float(my_int)  # 转换为5.0
print(my_float)           # 输出5.0

三、浮点数的运算

1. 基础运算

a = 3.5
b = 2.0

print(a + b)   # 5.5
print(a - b)   # 1.5
print(a * b)   # 7.0
print(a / b)   # 1.75

2. 混合运算(整型与浮点型)

result = 3 + 2.5  # 自动转换为浮点型
print(result)     # 5.5
print(type(result))  # <class 'float'>

3. 精度问题(重要!)

# 经典精度问题示例
print(0.1 + 0.2)         # 输出0.30000000000000004(不是0.3!)
print(0.1 + 0.2 == 0.3)  # 输出False

# 解决方法:使用round函数
print(round(0.1 + 0.2, 1) == 0.3)  # True

四、类型转换

1. 字符串转浮点数

stra = "98.5"
floata = float(score_str)
print(floata)  # 98.5

# 注意:字符串必须符合数字格式
# float("abc")  # 会报错!

2. 浮点数转整型

pi = 3.1415
print(int(pi))  # 3(直接截断小数)

五、常见问题与解决方案

1. 精度丢失问题

# 避免直接比较浮点数
a = 0.1 + 0.2
b = 0.3

# 正确比较方法:设置误差范围
e = 1e-9
print(abs(a - b) < e)  # True

2. 除以零的情况

try:
    print(5.0 / 0.0)  # 会引发ZeroDivisionError
except ZeroDivisionError:
    print("不能除以零!")

3. 无效转换处理

user_input = "3.14元"
try:
    num = float(user_input)
except ValueError:
    print("输入的不是纯数字!")
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇