gpt4 book ai didi

python - 在Python中将整数从argv传递到数组中

转载 作者:行者123 更新时间:2023-12-01 04:56:23 25 4
gpt4 key购买 nike

我想通过 sys.argv 将一些整数值传递到数组中,但出现 TypeError。如何将 argv 列表中的整数传递到数组中?我必须进行显式转换吗?

#!/usr/bin/python
from array import array
import serial, sys

ser = serial.Serial('/dev/ttyACM0', 9600)
a=array('i',(0 for i in range(1, 3)))

a.append(sys.argv[1])
a.append(sys.argv[2])
a.append(sys.argv[3])

print(a.range(0-2))

这是错误:

$ ./a.py 2 3 4
Traceback (most recent call last):
File "./a.py", line 8, in <module>
a.append(sys.argv[1])
TypeError: an integer is required

我知道 array('i') 是一个整数数组,而 sys.argv 是一个列表项。我只是不知道如何让 sys.argv 变成 int。

最佳答案

替换:

a.append(sys.argv[1])
a.append(sys.argv[2])
a.append(sys.argv[3])

与:

a.append(int(sys.argv[1]))
a.append(int(sys.argv[2]))
a.append(int(sys.argv[3]))

还有这个:

print(a.range(0-2))

与:

print(a[0:2]) # or print(a) 

否则会抛出另一个错误。

关于python - 在Python中将整数从argv传递到数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27250709/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com