我试图按每个第二个逗号分割一个字符串,我读到最好的方法是按每个逗号分割,然后按照此代码执行的每个第二个逗号重新加入它们:
ARGVLIST = sys.argv[2].split(",")
ARGVTHREAD = []
ARGVTHREAD.append([",".join(ARGVLIST[i:i+2]) for i in range(0, len(ARGVLIST), 2)])
但它只向数组附加了1个项目:
[' 8.8.8.8,GOOGLEDNS',' 8.8.8.8,GOOGLEDNS',' 10.10.10.10,TEST1',' 20.20.20.20 ,TEST2']
我需要能够为该数组中的每个项目创建一个线程,因此需要将它们拆分为单个项目,但我不知道该怎么做。
该项目是公开的,可以看到@ https://github.com/BIGPHATTOBY/fineping抱歉,如果这违反了规则,那么他们就知道它不是与工作相关的,而是个人培训
示例输入字符串:python3 fineping.py -S 8.8.8.8,GOOGLEDNS,8.8.8.8,TEST1,10.10.10.10,TEST2,20.20.20.20,TOBIAS
答案 0 :(得分:1)
在这里尝试一下。你知道,如果你的参数列表非常大,zip会很慢,但是在项目的情况下< 100,你不需要担心。
def split_second_comma(s):
arr = s.split(',')
arr = [x.strip() for x in arr]
new_arr = []
for x,y in zip(arr[0::2], arr[1::2]):
new_arr.append(x + ', ' + y)
print(new_arr)