最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python中import主要作用和使用場景

 更新時間:2025年05月07日 09:25:11   作者:aobulaien001  
本文主要介紹了Python中import主要作用和使用場景,通過import,可以導(dǎo)入模塊和模塊中定義的內(nèi)容,擴展Python的功能,具有一定的參考價值,感興趣的可以了解一下

一、前言

寫過 Python 的猿猿肯定對 import 不陌生。但 Python 在 import module 時會執(zhí)行相關(guān)的代碼,你知道嗎? Python import 還有其他的什么特性呢?通過這一篇文章,徹底掌握 Python import

二、Python import 詳解

2.1 Python import 介紹

在Python中,import是用于導(dǎo)入模塊和模塊中定義的變量、函數(shù)、類等內(nèi)容的關(guān)鍵字。import的作用是擴展Python的功能,并允許在代碼中使用其他模塊提供的功能。

2.2 Python import 例子

下面是import的主要作用和使用場景,并給出相應(yīng)的例子:

  • 導(dǎo)入模塊:使用import可以導(dǎo)入一個完整的模塊,以便在代碼中使用該模塊中定義的功能。例如:
import math

print(math.pi)  # 使用math模塊中的常數(shù)pi
  • 導(dǎo)入模塊中的特定內(nèi)容:使用from module import name語法可以導(dǎo)入模塊中的特定函數(shù)、變量或類,以便直接在代碼中使用,而不需要使用模塊名稱作為前綴。例如:
from math import sqrt

print(sqrt(16))  # 直接使用sqrt函數(shù),無需使用math.sqrt
  • 給導(dǎo)入的模塊或內(nèi)容起別名:使用import module as aliasfrom module import name as alias語法可以為導(dǎo)入的模塊或內(nèi)容指定一個別名,以便在代碼中使用更短的名稱。例如:
import numpy as np

print(np.array([1, 2, 3]))  # 使用別名np代替numpy
  • 導(dǎo)入模塊中的所有內(nèi)容:使用from module import *語法可以導(dǎo)入模塊中的所有內(nèi)容,使其在代碼中直接可用。但這種做法通常不被推薦,因為它會導(dǎo)致命名沖突和可讀性問題。例如:
from math import *

print(sin(pi/2))  # 直接使用導(dǎo)入的sin和pi,但不推薦這種寫法

這些是import的主要作用和使用場景。通過導(dǎo)入其他模塊,可以擴展Python的功能,并重用已有的代碼。使用合適的導(dǎo)入方式和別名,可以使代碼更加簡潔和可讀。

2.3 Python import 進(jìn)一步解釋

2.3.1 Python import module

在Python中,當(dāng)一個模塊被導(dǎo)入時,模塊中的代碼會被執(zhí)行。然而,模塊中的代碼只會在第一次導(dǎo)入時執(zhí)行一次。之后,如果再次導(dǎo)入同一個模塊,Python解釋器會直接使用已經(jīng)加載的模塊,而不會再次執(zhí)行模塊中的代碼。

這種行為是為了確保**模塊中的代碼只會被執(zhí)行一次****,以避免重復(fù)執(zhí)行相同的操作。通過導(dǎo)入模塊,我們可以在需要時使用其中定義的函數(shù)、類和變量,而不必重新執(zhí)行模塊中的代碼。

值得注意的是,如果在模塊中存在全局級別的可執(zhí)行語句(例如函數(shù)定義以外的代碼),則在導(dǎo)入時會執(zhí)行這些語句。因此,模塊的導(dǎo)入可能會觸發(fā)一些副作用操作,例如打印輸出或初始化全局變量。

比如:創(chuàng)建test1.py

print("我是 test1,我被執(zhí)行了")

def say_hello():
    print("hello world test1")

再創(chuàng)建 test2.py

def say_hello():
    from test import test1
    test1.say_hello()

if __name__ == '__main__':
    for i  in range(10):
        say_hello()

執(zhí)行 test2.py 輸出

我是 test1,我被執(zhí)行了
hello world test1
hello world test1
hello world test1
hello world test1
hello world test1
hello world test1
hello world test1
hello world test1
hello world test1
hello world test1

2.3.2 Python import package

在Python中,當(dāng)導(dǎo)入一個包(package)時,包本身不會被執(zhí)行。只有在使用該包中的模塊或?qū)ο髸r,才會執(zhí)行相應(yīng)的代碼。

當(dāng)導(dǎo)入一個包時,Python解釋器會查找并執(zhí)行該包下的__init__.py文件__init__.py文件可以包含一些初始化代碼,用于設(shè)置包的環(huán)境、導(dǎo)入子模塊或執(zhí)行其他需要在導(dǎo)入時執(zhí)行的操作。但這些代碼只會在首次導(dǎo)入包時執(zhí)行一次。

例如,假設(shè)我們有一個名為my_package的包,它的結(jié)構(gòu)如下:

my_package/
    __init__.py
    module1.py
    module2.py

__init__.py文件中,我們可以放置一些初始化代碼:

print("Executing initialization code in my_package")

# 導(dǎo)入子模塊
from . import module1
from . import module2

然后,我們可以在另一個腳本中導(dǎo)入my_package包:

import my_package

print("Import completed")

運行上述腳本,輸出如下:

Executing initialization code in my_package
Import completed

從輸出結(jié)果可以看出,在導(dǎo)入my_package包時,__init__.py中的初始化代碼被執(zhí)行了一次。然后,Import completed被打印出來,表示導(dǎo)入完成。

但注意,這里的執(zhí)行是指__init__.py中的代碼被執(zhí)行,并不是包中的所有模塊都被導(dǎo)入和執(zhí)行。只有在使用my_package中的具體模塊或?qū)ο髸r,才會執(zhí)行相應(yīng)的代碼。

總結(jié)起來,當(dāng)導(dǎo)入一個Python包時,包本身的代碼不會被執(zhí)行,只有在使用包內(nèi)的模塊或?qū)ο髸r才會執(zhí)行相應(yīng)的代碼。 __init__.py文件中的初始化代碼會在首次導(dǎo)入包時執(zhí)行一次,可用于設(shè)置包的環(huán)境和導(dǎo)入子模塊。

三、總結(jié)

介紹了 Python 中 import 關(guān)鍵字的使用方法和工作原理。通過 import ,可以導(dǎo)入模塊和模塊中定義的內(nèi)容,擴展 Python 的功能。文章提供了導(dǎo)入模塊、導(dǎo)入模塊中的特定內(nèi)容、給導(dǎo)入的模塊或內(nèi)容起別名以及導(dǎo)入模塊中的所有內(nèi)容的例子,展示了 import 的多種用法。

此外,文章解釋了模塊的代碼只會在第一次導(dǎo)入時執(zhí)行一次的特性,以及導(dǎo)入包時執(zhí)行__init__.py文件的初始化代碼。最后,總結(jié)了導(dǎo)入包時只有在使用包內(nèi)的模塊或?qū)ο髸r才執(zhí)行相應(yīng)代碼,而__init__.py文件中的初始化代碼只會在首次導(dǎo)入包時執(zhí)行一次。

到此這篇關(guān)于Python中import主要作用和使用場景的文章就介紹到這了,更多相關(guān)Python import內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python常見模塊及其用法示例詳解

    Python常見模塊及其用法示例詳解

    模塊導(dǎo)入是Python開發(fā)中的一個重要環(huán)節(jié),但如果不小心,可能會遇到各種錯誤,這篇文章主要給大家介紹了關(guān)于Python常見模塊及其用法的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-07-07
  • python使用Akshare與Streamlit實現(xiàn)股票估值分析教程(圖文代碼)

    python使用Akshare與Streamlit實現(xiàn)股票估值分析教程(圖文代碼)

    入職測試中的一道題,要求:從Akshare下載某一個股票近十年的財務(wù)報表包括,資產(chǎn)負(fù)債表,利潤表,現(xiàn)金流量表,保存到本地Csv文件,對該公司進(jìn)行財務(wù)分析,如提取近五年,營業(yè)收入,凈利潤數(shù)據(jù),并且算出同比增長,通過Pandas處理、Matplotlib可視化及Streamlit部署,實現(xiàn)財務(wù)數(shù)據(jù)分析
    2025-08-08
  • python格式化輸出保留2位小數(shù)的實現(xiàn)方法

    python格式化輸出保留2位小數(shù)的實現(xiàn)方法

    這篇文章主要介紹了python格式化輸出保留2位小數(shù)的實現(xiàn)方法,需要的朋友可以參考下
    2019-07-07
  • Python實現(xiàn)合并兩個字典的8種方法

    Python實現(xiàn)合并兩個字典的8種方法

    Python有多種方法可以通過使用各種函數(shù)和構(gòu)造函數(shù)來合并字典,本文主要介紹了Python實現(xiàn)合并兩個字典的8種方法,具有一定的參考價值,感興趣的可以了解一下
    2024-07-07
  • python實現(xiàn)給微信指定好友定時發(fā)送消息

    python實現(xiàn)給微信指定好友定時發(fā)送消息

    這篇文章主要為大家詳細(xì)介紹了python實現(xiàn)給微信指定好友定時發(fā)消息,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-04-04
  • Numpy數(shù)組轉(zhuǎn)置的實現(xiàn)

    Numpy數(shù)組轉(zhuǎn)置的實現(xiàn)

    本文主要介紹了Numpy數(shù)組轉(zhuǎn)置的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • pandas中的.assign()方法的用法示例小結(jié)

    pandas中的.assign()方法的用法示例小結(jié)

    pandas中的.assign()方法用于創(chuàng)建一個新的DataFrame,其中包含現(xiàn)有DataFrame的副本,并附加了指定的新列或更新了現(xiàn)有列,.assign()方法還可以鏈?zhǔn)绞褂?以添加多個新列或更新現(xiàn)有列,對pandas中的.assign()方法感興趣的朋友跟隨小編一起看看吧
    2023-10-10
  • python中定義結(jié)構(gòu)體的方法

    python中定義結(jié)構(gòu)體的方法

    Python中沒有專門定義結(jié)構(gòu)體的方法,但可以使用class標(biāo)記定義類來代替結(jié)構(gòu)體,其成員可以在構(gòu)造函數(shù)__init__中定義,具體方法如下,特分享下,方便需要的朋友
    2013-03-03
  • python使用numpy讀取、保存txt數(shù)據(jù)的實例

    python使用numpy讀取、保存txt數(shù)據(jù)的實例

    今天小編就為大家分享一篇python使用numpy讀取、保存txt數(shù)據(jù)的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • Python制作可視化報表的示例詳解

    Python制作可視化報表的示例詳解

    在數(shù)據(jù)展示中使用圖表來分享自己的見解,是個非常常見的方法。這也是Tableau、Power BI這類商業(yè)智能儀表盤持續(xù)流行的原因之一。本文主主要介紹了一個用Python制作可視化報表的案例,感興趣的可以學(xué)習(xí)一下
    2022-02-02

最新評論

宜兰市| 洛浦县| 庐江县| 恭城| 曲麻莱县| 远安县| 浦县| 读书| 平凉市| 浪卡子县| 武鸣县| 靖安县| 宣化县| 金溪县| 淳化县| 南岸区| 名山县| 布拖县| 玛纳斯县| 武邑县| 壶关县| 仙桃市| 余庆县| 云浮市| 雷山县| 肥西县| 醴陵市| 界首市| 古丈县| 金乡县| 襄城县| 巩留县| 榆社县| 赞皇县| 吉安县| 台州市| 日照市| 郴州市| 崇礼县| 隆林| 嘉义县|