python中的符号 ->和...

1、->一般出现在python函数定义的函数名后面,为函数添加元数据,描述函数的返回类型,也可以理解为给函数添加注解。

def sub(x:int, y:int) -> int:
    return x - y

这里面,元数据表明了函数的返回值为int类型。Python解释器不会对这些注解添加任何的语义。它们不会被类型检查,运行时跟没有加注解之前的效果也没有任何差距。
2、省略号(…)是一个Python对象,叫Ellipsis,它没有方法,是一个单例对象(singleton object):
几种常见用法:
2.1 NumPy索引

import numpy as np
array = np.random.rand(3, 2) # 创建3*2 array
print(array); print(array[...]); print(array[Ellipsis]) # 等效
print(array[..., 0]); print(array[:,0]); print(array[Ellipsis, 0]) # 等效 第一列
print(array[0, ...])# 等效 第一行

2.2 函数参数类型提示
第一个省略号(…)表示输入参数类型允许为任意,第二个省略号(…)表示输出参数类型允许为任意,

def fun(x: ...) -> ...:
    print(x)
    return x
fun(3)
fun('4')

2.3 相当于pass

def fun1():
    pass
def fun2():
    ...
fun1()
fun2()

你可能感兴趣的:(python,开发语言)