python中的包

cov_tensor = torch.randn(10, 4, 4, dtype=torch.complex64)

torch是一个包,跳转到其定义时会去到init
 

为什么跳转到__init__.py

__init__.py文件是Python包(package)的标识。在PyTorch中,许多功能都是通过包来组织的。当你从顶层模块(如torch)导入某个子模块或函数时,实际上是在torch包的__init__.py文件中定义了哪些子模块或函数是可用的。因此,当你尝试跳转到torch的定义时,PyCharm可能会带你到torch包的__init__.py文件,因为这里定义了torch模块的公开接口。

包的定义

在Python中,包是一个包含__init__.py文件的目录,它可以包含模块(.py文件)和子包(包含__init__.py的子目录)。包提供了一种组织相关模块的方式,使得它们可以作为一个整体被导入和使用。

torch作为包

PyTorch的torch目录(或更准确地说是安装后的PyTorch库中的torch目录)包含了许多模块(如torch.nntorch.optim等)和子包,以及一个__init__.py文件。这个__init__.py文件使得torch目录可以被Python解释器识别为一个包,并且允许你从torch包中导入特定的模块或子包。

例如,当你执行import torch时,你实际上是在导入torch包,并且Python会执行torch/__init__.py文件中的代码来初始化这个包。然后,你可以从torch包中进一步导入你需要的模块或子包,如import torch.nnfrom torch import nn

randn时一个函数,跳转到定义是会去到说明文件_variablefunctions.pyi

包(文件夹+init)的结构

包就是一个文件夹(也叫做目录)
模块指的就是.py文件。
包里面包含一个_init_模块,使得目录(文件夹)可以叫做包
还包含其他.py模块

_init_是空的,导入的时候必须要写from mypackage.mymodule import greet, add_numbers

对文件夹下__init__函数编写东西,就可以直接import文件夹,调用文件夹中.py文件下定义的函数了



对包右键——转到声明——跳转到__init__文件

  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值