网络编程
位置:首页>> 网络编程>> Python编程>> 详解python数组中的符号...与:符号的不同之处

详解python数组中的符号...与:符号的不同之处

作者:勤奋的大熊猫  发布时间:2022-10-14 19:12:37 

标签:python,数组符号

不知道大家有没有见过在python数组中使用...符号,因为前段时间读别人代码的时候遇到了这个符号立刻就云里雾里,于是这里特此记录一下。先来看一段代码:


import numpy as np

x = np.array([[1, 3],
      [5, 6],
      [8, 10]])

print("使用'...'符号的结果为:")
print(x[..., 0])
print("使用':'符号的结果为:")
print(x[:, 0])
"""
使用'...'符号的结果为:
[1 5 8]
使用':'符号的结果为:
[1 5 8]
"""

对比结果不难发现,可以得到结论在python数组中,...符号的功能等同于:符号。然而事实真的是这样吗?答案是否定的,我们再看一下三维数组的情况。


import numpy as np

x = np.array([[[0, 1],
       [2, 3]],
      [[4, 5],
       [5, 6]],
      [[7, 8],
       [9, 10]]])

print("使用'...'符号的结果为:")
print(x[..., 0])
print("使用两个':'符号的结果为:")
print(x[:, :, 1])
print("使用一个':'符号的结果为:")
print(x[:, 1])
"""
使用'...'符号的结果为:
[[0 2]
[4 5]
[7 9]]
使用两个':'符号的结果为:
[[ 1 3]
[ 5 6]
[ 8 10]]
使用一个':'符号的结果为:
[[ 2 3]
[ 5 6]
[ 9 10]]
"""

我们可以看到,使用符号...的结果与使用两个:符号的结果一致,但是与使用单个:符号的结果有出入。因此我们可以得到,符号...并不完全等同于符号:。

结论:对于二维数组,符号...等同于符号:,但是对于三维数组则不等于,要考虑具体的情况。

来源:https://blog.csdn.net/u011699626/article/details/114756295

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com