python 中 __name__ 的使用

1.?如果模塊是被導入,__name__的值為模塊名字
2.?如果模塊是被直接執行,__name__的值為’__main__’
Py1.py
#!/usr/bin/env python
def test():print '__name__ = ',__name__
if __name__ == '__main__':test()
Py2.py
#!/usr/bin/env python
import Py1.pydef test():print '__name__ = ',__name__
if __name__ == '__main__':test()print ‘Py1.py __name__ = ’,Py1.__name__
執行結果:
__name__=__main__
Py1.py __name__=Py1

?

通過結果可以知道,Py2.py直接執行,那么內建變量__name__的值為__main__,否則為模塊的名字,通過這個特性可以在if語句里面添加測試代碼,可以提高減少BUG,提高程序的健壯性。
if __name__ == '__main__':test()

?

轉載于:https://www.cnblogs.com/mangoVic/p/5611313.html

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

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

相關文章

第6章 循環

6.1 range 函數用來創建一個數字列表,它的范圍是從起始數字開始到結束數字之前 1 >>> for x in range(0,5): 2 print(Hello %s % x) 3 4 Hello 0 5 Hello 1 6 Hello 2 7 Hello 3 8 Hello 4 1 >>> print(list(range(10,20))) 2 [10, 11, 12, …

C# 實例解釋面向對象編程中的依賴反轉原則

在面向對象編程中,SOLID 是五個設計原則的首字母縮寫,旨在使軟件設計更易于理解、靈活和可維護。這些原則是由美國軟件工程師和講師羅伯特C馬丁(Robert Cecil Martin)提出的許多原則的子集,在他2000年的論文《設計原則與設計模式》中首次提出…

Linux學習筆記之一————什么是Linux及其應用領域

1.1認識Linux 1)什么是操作系統 2)現實生活中的操作系統 win7 Mac Android iOS 3) 操作系統的發展史 (1)Unix 1965年之前的時候,電腦并不像現在一樣普遍,它可不是一般人能碰的起的,…

Flex中寬度計算

flex 有三個屬性值,分別是 flex-grow, flex-shrink, flex-basis,默認值是 0 1 auto。 發現網上詳細介紹他們的文章比較少, 今天就詳細說說他們,先一個一個看。 flex-grow 定義項目的放大比例,默…

Lucene詳解

一.lucene原理 Lucene 是apache軟件基金會一個開放源代碼的全文檢索引擎工具包,是一個全文檢索引擎的架構,提供了完整的查詢引擎和索引引擎,部分文本分析引擎。它不是一個完整的搜索應用程序,而是為你的應用程序提供索引和搜索功能…

.NET 6.0中使用Identity框架實現JWT身份認證與授權

原文作者:Sarathlal Saseendran原文鏈接:https://www.c-sharpcorner.com/article/jwt-authentication-and-authorization-in-net-6-0-with-identity-framework/翻譯:沙漠盡頭的狼(谷歌翻譯加持)介紹微軟于 2021 年 11 …

adb devices 里面有很多 emulator-XXXX的解決方法

2019獨角獸企業重金招聘Python工程師標準>>> adb kill-server 轉載于:https://my.oschina.net/sfshine/blog/700354

MQ(Message Queue)簡介

一、何為MQ? MQ全稱為Message Queue, 消息隊列(MQ)是一種應用程序對應用程序的通信方法。應用程序通過讀寫出入隊列的消息(針對應用程序的數據)來通信,而無需專用連接來鏈接它們。消息傳遞指的是程序之間通…

【GlobalMapper精品教程】015:矢量面圖層的創建及數字化操作

本文講解在Globalmapper中文23.0中創建矢量面狀數據(政區數據),并進行面狀數據采集及編輯的詳細操作流程,數據為配套案例數據包中的data015.rar。 參考閱讀: ArcGIS實驗教程——實驗三:矢量數據采集與編輯(矢量化) 文章目錄 一、認識工具條1. 數字化(創建)工具條2. 選…

Blazor University (39)JavaScript 互操作 —— 更新 document title

原文鏈接:https://blazor-university.com/javascript-interop/calling-javascript-from-dotnet/updating-the-document-title/更新 document title源代碼[1]在創建 Blazor 布局[2]部分中,我們看到了 Blazor 應用程序如何存在于 HTML(或 cshtm…

IIS 日志文件位置

IIS 6 Log files location IIS 6中日志文件的位置%windir%\System32\LogFilesIIS 7 Log files location IIS的日志文件的位置%SystemDrive%\inetpub\logs\LogFiles用戶每打開一次網頁,iis 都會記錄用戶IP、訪問的網頁地址、訪問時間、訪問狀態等信息,這些…

APP測試流程和測試點

1 APP測試基本流程 1.1流程圖 1.2測試周期 測試周期可按項目的開發周期來確定測試時間,一般測試時間為兩三周(即15個工作日),根據項目情況以及版本質量可適當縮短或延長測試時間。正式測試前先向主管確認項目排期。 1.3測試資源 測…

39所強基計劃試點高校已全部公布招生簡章

截至目前(4月8日下午) 39所強基計劃試點高校 已全部公布招生簡章 各高校招生要求是什么? 招生專業有哪些? 什么時候報名? 一起來看 北京大學 招生對象及報名條件 各省(區、市)符合2022年全國普通高等學校招生統…

【ArcGIS錯誤異常100問】之001:License服務無法啟動權威解決辦法

測試環境: 操作系統:Windows10ArcGIS版本:10.X結果:通過測試 文章目錄1. 錯誤提示2. 問題分析3. 解決辦法3.1 關閉Windows Defender3.2 關閉系統防火墻3.3 刪除邁克菲(McAfee)殺毒軟件3.4 在系統服務中啟動…

Appium wait等待的三種方法

1、sleep()方法Thread.sleep(60000)強制等待60s2、隱式等待implicitlyWait()driver.manage().timeouts().implicitlyWait(30,TimeUnit.SECONDS);全局等待30s不管元素是否已經加載1) 當使用了隱式等待執行測試的時候,如果WebDriver沒有在DOM中…

ASP.NET Core 技術內幕與項目實戰讀后感

前幾天拿到了楊中科老師的新書《ASP.NET Core 技術內幕與項目實戰》,迫不及待的“兩”口氣讀完了。用一句話來總結,這是一本寫給.NET開發者的非常實用的接地氣的好書,感覺有必要自發為這本書宣傳一波。楊老師在 .NET 開發者社區中的知名度非常…

avalon2學習教程15指令總結

avalon的指令在上一節已經全部介紹完畢,當然有的語焉不詳,如ms-js。本節主要總結我對這方面的思考與探索。 MVVM的成功很大一語分是來自于其指令,或叫綁定。讓操作視圖的功能交由形形式式的指令來代勞。VM,成了一個大管家。它只一…

【ArcGIS錯誤異常100問】之002:Error 000735 簡化容差:值是必需的(簡化線、簡化面工具)

測試環境: 操作系統:windows7ArcGIS版本:10.2結果:通過測試 文章目錄1. 錯誤提示2. 問題分析3. 解決辦法4. 問題驗證1. 錯誤提示 在ArcGIS中使用簡化面或者簡化線工具時,點擊確定會提示Error 000735:簡化容…

mybatis中mysql轉義講解

本文為博主原創,未經允許不得轉載: 在mybatis中寫sql的時候,遇到特殊字符在加載解析的時候,會進行轉義,所以在mybatis中 寫sql語句的時候,遇到特殊字符進行轉義處理。 需要注意的是,轉義的字符為…

用Python執行js文件代碼并獲取返回結果

js代碼(myjs.js): /** Title: This is a file for ……* Author: JackieZheng* Date: 2022-04-12 09:24:13* LastEditTime: 2022-04-12 09:40:55* LastEditors: Please set LastEditors* Description:* FilePath: myjs.js*/function hello(…