能否使用存储在变量中的整数作为浮点数的小数部分?
能否使用存储在变量中的整数作为浮点数的小数部分
可以实现,但不能直接用你示例里的b = 1.a写法,这种写法不符合Python语法规则,解析器会把a识别为浮点数字面量后的非法字符,不会将其当作你定义的变量处理。
你可以用以下两种常用方案实现需求:
方案1:字符串拼接后类型转换
把整数部分、小数点、变量a拼接为字符串后,再转为浮点数类型,写法直观易读:
a = 5 b = float(f"1.{a}") print(b) # 输出结果为1.5
如果a是多位数也可以正常适配,比如a = 234时,运行后得到的b就是1.234。
方案2:数学运算实现
先计算变量a对应的小数位权重,再和整数部分相加得到结果:
a = 5 # 计算a对应的小数权重:10的负(a的位数)次方 decimal_weight = 10 ** (-len(str(a))) b = 1 + a * decimal_weight print(b) # 输出结果为1.5
如果你的整数部分也存储在变量中,把上述代码里的1替换为对应的整数变量即可通用。
内容的提问来源于stack exchange,提问作者Lucas Schwartz
相关产品推荐
相关产品推荐

