Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Python3中设置两个压缩NumPy数组的字符串格式_Python_Arrays_Python 3.x_List_Numpy - Fatal编程技术网

在Python3中设置两个压缩NumPy数组的字符串格式

在Python3中设置两个压缩NumPy数组的字符串格式,python,arrays,python-3.x,list,numpy,Python,Arrays,Python 3.x,List,Numpy,我想使用pythons格式函数来打印numpy数组的后续数字 我有两个numpy阵列,假设: x=[1 2 3 4] y=[5 6 7 8] 现在我想打印以下内容: 1 5 2 6 3 7 4 8 我几乎可以通过以下方式实现这一目标: print('{} {} {} {}'.format(*zip(x,y))) 但它会产生: (1,5) (2,6) (3,7) (4,8) 我当然可以用 "{} {} {} {}".format(x[0], y[0], x[1], y[1]) 以此类推,

我想使用pythons格式函数来打印numpy数组的后续数字

我有两个numpy阵列,假设:

x=[1 2 3 4]
y=[5 6 7 8]
现在我想打印以下内容:

1 5 2 6 3 7 4 8
我几乎可以通过以下方式实现这一目标:

print('{} {} {} {}'.format(*zip(x,y)))
但它会产生:

(1,5) (2,6) (3,7) (4,8)
我当然可以用

"{} {} {} {}".format(x[0], y[0], x[1], y[1])
以此类推,但这需要知道数组的长度

注: 这行代码符合我的要求

print(*["%f %f"%(a,b) for a,b in zip(x,y)])
但这确实使用了旧的格式样式,我想知道新格式是否也可以。它看起来也有点古怪,我想:-D

执行以下操作:

x=[1, 2, 3, 4]
y=[5, 6, 7, 8]

result = ' '.join([str(i) for e in  zip(x, y) for i in e])
print(result)
输出

1 5 2 6 3 7 4 8
array([1, 5, 2, 6, 3, 7, 4, 8])
请执行以下操作:

x=[1, 2, 3, 4]
y=[5, 6, 7, 8]

result = ' '.join([str(i) for e in  zip(x, y) for i in e])
print(result)
输出

1 5 2 6 3 7 4 8
array([1, 5, 2, 6, 3, 7, 4, 8])
您可以使用来交错两个列表中的元素:

list(chain.from_iterable(zip(x, y)))
[1, 5, 2, 6, 3, 7, 4, 8]
如果要按指定方式打印所有连接的图元,可以执行以下操作:

print(*chain.from_iterable(zip(x, y)))
1 5 2 6 3 7 4 8
您可以使用来交错两个列表中的元素:

list(chain.from_iterable(zip(x, y)))
[1, 5, 2, 6, 3, 7, 4, 8]
如果要按指定方式打印所有连接的图元,可以执行以下操作:

print(*chain.from_iterable(zip(x, y)))
1 5 2 6 3 7 4 8
您可以使用
zip()

l1 = [0, 2, 4, 6, 8]
l2 = [1, 3, 5, 7, 9]

for i, j in zip(l1, l2):
    print(i)
    print(j)
输出:

0
1
2
3
4
5
6
7
8
9
您可以使用
zip()

l1 = [0, 2, 4, 6, 8]
l2 = [1, 3, 5, 7, 9]

for i, j in zip(l1, l2):
    print(i)
    print(j)
输出:

0
1
2
3
4
5
6
7
8
9

来点什么

np.array(list(zip(a,b))).flatten()
输出

1 5 2 6 3 7 4 8
array([1, 5, 2, 6, 3, 7, 4, 8])

来点什么

np.array(list(zip(a,b))).flatten()
输出

1 5 2 6 3 7 4 8
array([1, 5, 2, 6, 3, 7, 4, 8])
也可以通过以下方式实现:

通常情况下,@yatu和
itertools.chain给出的方法是可行的,特别是如果您希望所有元素都用空格分隔。但是
starmap
在您希望在对之间使用一些特殊格式时可能会很方便,例如:

>>> print(*starmap("{}:{}".format, zip(x, y)))
1:5 2:6 3:7 4:8
也可以通过以下方式实现:

通常情况下,@yatu和
itertools.chain给出的方法是可行的,特别是如果您希望所有元素都用空格分隔。但是
starmap
在您希望在对之间使用一些特殊格式时可能会很方便,例如:

>>> print(*starmap("{}:{}".format, zip(x, y)))
1:5 2:6 3:7 4:8

既然你用numpy,那你呢

>>> ' '.join(np.vstack((x, y)).T.flatten().astype(str))
'1 5 2 6 3 7 4 8'

既然你用numpy,那你呢

>>> ' '.join(np.vstack((x, y)).T.flatten().astype(str))
'1 5 2 6 3 7 4 8'

再加入一个

("{} "*len(x)*2).format(*np.ravel(list(zip(x,y))))

 '1 5 2 6 3 7 4 8 '

再加入一个

("{} "*len(x)*2).format(*np.ravel(list(zip(x,y))))

 '1 5 2 6 3 7 4 8 '
因此,使用
print(*[“{}{}”.a,b的格式(a,b)为zip格式(x,y)])
。你有99%的成功率。您可以删除列表:
print(*({}{}).format(a,b)表示a,b在zip(x,y))中)
所以使用
print(*[{}{}.format(a,b)表示a,b在zip(x,y)]
。你有99%的成功率。您可以删除列表:
print(*({}{}).zip格式(x,y)中a,b的格式(a,b))