首页 > 解决方案 > 如何将值作为整数返回

问题描述

此代码打印值为:

['38']

['25']

['57']

['61']

['73']

等等...如何使它返回值作为整数?

像这样:

38

25

57

61

73
import BlynkLib

# Initialize Blynk
blynk = BlynkLib.Blynk('xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx')

# Register Virtual Pins
@blynk.VIRTUAL_WRITE(1)
def my_write_handler(value):
    #print('Current V1 value: {}'.format(value))

    print(value)

while True:
    blynk.run()

谢谢

标签: python-3.xblynk

解决方案


当你执行

    print(value)

你看,例如

['38']

'38'您可以通过使用第零个元素来挑选value[0]

然后,要将其从字符串转换为整数,请调用 int: int(value[0])

如果你可能得到一个空列表,那么添加一个守卫:

    if len(value) > 0:
        num = int(value[0])

考虑使用元组解包:

    num, *_ = map(int, value)

由于您显然收到了多个值的列表,因此将标识符values用作处理程序回调函数的形式参数会更清楚。


推荐阅读