-2

此代码打印值为:

['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()

谢谢

4

1 回答 1

0

当你执行

    print(value)

你看,例如

['38']

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

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

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

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

考虑使用元组解包:

    num, *_ = map(int, value)

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

于 2020-01-06T01:50:54.883 回答