python中一個文件(A.py)怎么調用另一個文件(B.py)中定義的類AA詳解和示例

本文主要講解python文件中怎么調用另外一個py文件中定義的類,將通過代碼和示例解讀,幫助大家理解和使用。

目錄

  • 代碼
    • B.py
    • A.py
  • 調用過程

代碼

B.py

如在文件B.py,定義了類別Bottleneck,其包含卷積層、正則化和激活函數層,主要對輸入圖像進行處理。但沒有讀取圖像等代碼。


from torch import nndef autopad(k, p=None, d=1):  # kernel, padding, dilation# Pad to 'same' shape outputsif d > 1:k = d * (k - 1) + 1 if isinstance(k, int) else [d * (x - 1) + 1 for x in k]  # actual kernel-sizeif p is None:p = k // 2 if isinstance(k, int) else [x // 2 for x in k]  # auto-padreturn pclass Conv(nn.Module):# Standard convolution with args(ch_in, ch_out, kernel, stride, padding, groups, dilation, activation)default_act = nn.SiLU()  # default activationdef __init__(self, c1, c2, k=3, s=2, p=None, g=1, d=1, act=True):super().__init__()self.conv = nn.Conv2d(c1, c2, k, s, autopad(k, p, d), groups=g, dilation=d, bias=False)self.bn = nn.BatchNorm2d(c2)self.act = self.default_act if act is True else act if isinstance(act, nn.Module) else nn.Identity()def forward(self, x):return self.act(self.bn(self.conv(x)))def forward_fuse(self, x):return self.act(self.conv(x))class Bottleneck(nn.Module):# Standard bottleneckdef __init__(self, c1, c2, shortcut=True, g=1, e=0.5):  # ch_in, ch_out, shortcut, groups, expansionsuper().__init__()c_ = int(c2 * e)  # hidden channelsself.cv1 = Conv(c1, c_, 1, 1)self.cv2 = Conv(c_, c2, 3, 2, g=g)self.add = shortcut and c1 == c2def forward(self, x):return x + self.cv2(self.cv1(x)) if self.add else self.cv2(self.cv1(x))

A.py

文件A.py,在此部分,加載一幅圖像并對其進行卷積處理。在代碼中,沒有卷積等層的定義,通過調用B.py中定義的類進行。

import B
from PIL import Image
from torchvision import transforms
import math
if __name__ == '__main__':image = Image.open("../11111.jpg")transform = transforms.Compose([transforms.ToTensor()])# 對圖像應用轉換操作input_image = transform(image)input_image = input_image.unsqueeze(0)CBR=B.Bottleneck(3,64)x=CBR(input_image )print(x.shape)

把上面代碼保存到自己本地,再把圖像路徑換成的圖像路徑,運行得到打印機結果為:

在這里插入圖片描述

調用過程

在上面A.py的代碼中,先通過import B導入B.py文件,之后通過CBR=B.Bottleneck(3,64)關聯和初始化定義的Bottleneck。最后使用x=CBR(input_image )進行使用即可。

注意,本文中用的示例是A.py和B.py在同一文件夾中,如不在同一文件夾需要添加路徑。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/165508.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/165508.shtml
英文地址,請注明出處:http://en.pswp.cn/news/165508.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

WordPress用sql命令批量刪除所有文章

有時我們需要將一個網站搬遷到另一個服務器。我們只想保留網站的模板樣式,而不需要文章內容。一般情況下我們可以在后臺刪除已發表的文章,但如果有很多文章,我們則需要一次刪除所有文章。 WordPress如何批量刪除所有文章 進入網站空間后臺&a…

常見樹種(貴州省):013桉樹、米櫧、栲類

摘要:本專欄樹種介紹圖片來源于PPBC中國植物圖像庫(下附網址),本文整理僅做交流學習使用,同時便于查找,如有侵權請聯系刪除。 圖片網址:PPBC中國植物圖像庫——最大的植物分類圖片庫 一、桉樹 …

Java中的字符串String

目錄 一、常用方法 1、字符串構造 2、String對象的比較 (1)、equals方法 (2)、compareTo方法 (3)、compareToIgnoreCase方法(忽略大小寫進行比較) 3、字符串查找 4、轉化 &…

4.3 實時陰影

一、基于圖像的陰影技術(Shadow Map) 什么是陰影 當來自光源的至少一個點在空間中被遮擋時,就產生了陰影區域。 陰影的前提 直接光照不透明物體 陰影的實現方式 陰影體(Shadow Volumes)——空間中黑暗部分的幾何…

Springboot集成swagger之knife4j

knife4j的最終效果&#xff1a; 支持直觀的入參介紹、在線調試及離線各種API文檔下載。 1 引入pom <dependency><groupId>com.github.xiaoymin</groupId><artifactId>knife4j-spring-boot-starter</artifactId><version>3.0.2</ver…

python 3.7安裝并配置 pytorch(torch 1.8.2 + cuda 11.1 + torchaudio 0.8.2 + torchvision 0.9.2)

文章目錄 前言一、安裝 python二、安裝 cuda cudnn二、安裝 pytorch2.1 版本匹配2.1.1 方法一2.1.2 方法二2.2 安裝 .tar.bz2 三、驗證是否安裝成功總結 前言 本篇文章主要介紹在Windows下 python 3.7 配置 pytorch&#xff0c;幫助需要的朋友避坑 安裝 pytorch 需要多個版本適…

內建組件和模塊

討論 Vue.js 中幾個非常重要的內建組件和模塊&#xff0c;例如 KeepAlive 組件、Teleport 組件、Transition 組件等&#xff0c;它們都需要渲染器級別的底層支持。另外&#xff0c;這些內建組件所帶來的能力&#xff0c;對開發者而言非常重要且實用&#xff0c;理解它們的工作原…

Word中如何實現 圖片 | 表格 自動編號與文中引用編號對應

當我們在進行大篇幅word文檔的編寫時&#xff0c;為了節約修改文章中圖片或表格所花費的大量時間&#xff0c;可以將圖片自動編號&#xff0c;且讓文中引用的順序跟著圖片順序的變化而變化&#xff0c;具體操作如下&#xff1a; 1. 將鼠標定位在圖片或者表格欲加編號的下方或上…

Banana Pi [BPi-R3-Mini] 回顧和主線 ImmortalWrt 固件支持

BananaPi BPi-R3 Mini 采用 MediaTek 830&#xff08;4 個 A53&#xff0c;最高 2.0 GHz&#xff09;&#xff0c;具有 2 個 2.5 GbE、AX4200 2.4G/5G 無線和 USB 2.0 端口。它還具有兩個 M.2 連接器&#xff0c;可用于 NVMe SSD 和 5G 模塊&#xff08;板上包含 Nano SIM 插槽…

ELK企業級日志分析平臺——kibana數據可視化

部署 新建虛擬機server5&#xff0c;部署kibana [rootelk5 ~]# rpm -ivh kibana-7.6.1-x86_64.rpm [rootelk5 ~]# cd /etc/kibana/[rootelk5 kibana]# vim kibana.ymlserver.host: "0.0.0.0"elasticsearch.hosts: ["http://192.168.56.11:9200"]i18n.local…

微服務學習(十二):安裝Minio

微服務學習&#xff08;十二&#xff09;&#xff1a;安裝Minio 一、簡介 MinIO 是一款基于Go語言發開的高性能、分布式的對象存儲系統。客戶端支持Java,Net,Python,Javacript, Golang語言。MinIO系統&#xff0c;非常適合于存儲大容量非結構化的數據&#xff0c;例如圖片、視…

2023亞太杯數學建模C題:我國新能源電動汽車的發展趨勢,思路模型代碼

問題C 我國新能源電動汽車的發展趨勢 賽題思路&#xff1a;獲取思路見文末名片&#xff0c;第一時間更新 新能源汽車是指以先進技術原理、新技術、新結構的非常規汽車燃料為動力來源( 非常規汽車燃料指汽油、柴油以外的燃料&#xff09;&#xff0c;將先進技術進行汽車動力控制…

Qt 軟件開發框架(主要部分)

目錄 1、 一個軟件基本要素 &#xff08;1&#xff09;UI模塊 &#xff08;2&#xff09;網絡模塊 &#xff08;3&#xff09;業務邏輯模塊 &#xff08;4&#xff09;中間層 &#xff08;5&#xff09;獨立模塊&#xff08;守護進程、更新模塊、日志收集模塊…&#xff…

【spring(三)】AOP總結

&#x1f308;鍵盤敲爛&#xff0c;年薪30萬&#x1f308; 目錄 一、AOP相關概念 ① AOP核心思想思想&#xff1a; ② AOP專業術語&#xff1a; 二、AOP快速如入門 三、AOP工作流程 四、切入點表達式 ① 語法格式 ②支持通配符 ③書寫技巧 五、通知類型 ①?環繞通知…

nodejs 如何將 Buffer 數據轉為 String

問題說明 使用webSocket的時候出現了一個問題&#xff0c;前端小程序和nodejs后端建立websocket連接后&#xff0c;使用send方法發送到后端為buffer格式&#xff0c;以下為我前后端代碼 1、前端小程序代碼 //創建webSocket連接 const socket uni.connectSocket({url: wss…

[架構之路-249]:目標系統 - 設計方法 - 軟件工程 - 需求工程- 需求開發:如何用圖形表達需求,結構化方法的需求分析

目錄 一、概述 二、數據模型&#xff1a;E-R圖/實體關系圖&#xff08;數據單元之間的結構關系&#xff09; 三、功能模型&#xff1a;數據流圖DFD&#xff08;邏輯運算&#xff0c;包括輸入和輸出&#xff0c;實體之間的關系&#xff09;&#xff1a;輸入》處理 》 輸出 四…

【科技素養】藍橋杯STEMA 科技素養組模擬練習試卷5

1、隨著對新冠肺炎研究的深入&#xff0c;多個國家都已經開始了針對新冠肺炎病毒的疫苗的開發。以下關于疫苗的描述中&#xff0c;不正確的是 A、滅活疫苗的基本原理是將經過處理的病原體注射進入人體內 B、大規模接種疫苗可以幫助達成“群體免疫“&#xff0c;阻斷病毒傳播 …

【VSCode】VSCode 使用

目錄 文章目錄 目錄插件配置設置代碼不顯示 git 提示 "xxx months ago | 1 author"設置打開項目不自動選擇 CMakeLists 插件 以下插件為 C 開發偏好設置。 C/CCMakeCMake ToolsGitLensRemote DevelopmentRemote Explorer 配置 設置代碼不顯示 git 提示 “xxx mon…

絕地求生:PGC 2023 賽事直播期間最高可獲:2000萬G-Coins,你還不來嗎?

今年PGC直播期間將有最高2000萬G-Coin掉落&#xff0c;究竟花落誰家咱們拭目以待 公告原文&#xff1a;Watch PGC 2023 Live And Earn G-Coins! 如何賺取高額G-Coin&#xff1f; Throughout the PGC 2023, an astounding 20,000,000 G-Coins will be up for grabs as part of …

一致性 Hash 算法 Hash 環發生偏移怎么解決

本篇是對文章《一文徹底讀懂一致性哈希算法》的重寫&#xff0c;圖文并茂&#xff0c;篇幅較長&#xff0c;歡迎閱讀完提供寶貴的建議&#xff0c;一起提升文章質量。如果感覺不錯不要忘記點贊、關注、轉發哦。原文鏈接&#xff1a; 《一文徹底讀懂一致性Hash 算法》 通過閱讀本…