python你在@什么&python的@符号用法

最近小虎遇到了python代码中的@,代码长下面这样。她到底在@u什么?我的例子中,这只是一个乘法。但更常见的用法是对类进行操作。有人叫@为装饰器。

INPUT_NOISE @ np.random.randn(2, 1)

@的用法

乘法

用2x2矩阵与随机数数组

INPUT_NOISE = np.diag([1.0, np.deg2rad(30.0)]) ** 2
x=np.random.randn(2, 1)

进行矩阵multiplication。

INPUT_NOISE @ x

结果跟下面一样

INPUT_NOISE.dot(x)

压缩名称

将pizza定义为Pizza的类,然后利用@对pizza进行添加修改。

class Pizza(object):
    def __init__(self):
        self.toppings = []

    def __call__(self, topping):
        # When using '@instance_of_pizza' before a function definition
        # the function gets passed onto 'topping'.
        self.toppings.append(topping())

    def __repr__(self):
        return str(self.toppings)

pizza = Pizza()

@pizza
def cheese():
    return 'cheese'
@pizza
def sauce():
    return 'sauce'

print(pizza)

结果如下:
在这里插入图片描述

压缩名称用途的参考资料:What does the “at” (@) symbol do in Python?

posted @   狂小虎  阅读(77)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示