You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何对Flet Slider控件的数值执行除法运算并显示为标签?

解决Flet Slider标签除法运算显示问题

错误原因

你碰到的ValueError是因为Flet Slider的label模板里的{value}是字符串类型,如果滑块值是带小数的格式(比如"75.0"),直接用int(value)转换就会报错——int()只能转换纯整数格式的字符串,带小数点的内容无法识别。

解决方法

先把字符串转成float类型,再执行除法运算,最后按需格式化显示即可:

示例代码

import flet as ft

def main(page: ft.Page):
    def slider_changed(e):
        pass

    # 转float后做除法,保留2位小数显示
    slider = ft.Slider(
        min=0,
        max=100,
        value=50,
        label="{:.2f}".format(float("{value}")/2),
        on_change=slider_changed
    )
    page.add(slider)

ft.app(target=main)

也可以用更简洁的f-string写法:

slider = ft.Slider(
    min=0,
    max=100,
    value=50,
    label=f"{float('{value}')/2:.2f}",
    on_change=slider_changed
)

如果需要显示整数结果(除法后取整),可以这样写:

label=f"{int(float('{value}')/2)}"

关键说明

  • 必须先把{value}转成float,不管滑块值是整数还是小数格式的字符串,float()都能正确识别转换。
  • 用格式化语法(比如.2f)可以控制小数位数,让标签显示更规整。

内容的提问来源于stack exchange,提问作者lukassliacky

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 05:34:50