亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

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

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

一、前言

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

二、Python import 詳解

2.1 Python import 介紹

在Python中,import是用于導入模塊和模塊中定義的變量、函數、類等內容的關鍵字import的作用是擴展Python的功能,并允許在代碼中使用其他模塊提供的功能。

2.2 Python import 例子

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

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

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

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

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

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

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

2.3 Python import 進一步解釋

2.3.1 Python import module

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

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

值得注意的是,如果在模塊中存在全局級別的可執(zhí)行語句(例如函數定義以外的代碼),則在導入時會執(zhí)行這些語句。因此,模塊的導入可能會觸發(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中,當導入一個包(package)時,包本身不會被執(zhí)行。只有在使用該包中的模塊或對象時,才會執(zhí)行相應的代碼。

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

例如,假設我們有一個名為my_package的包,它的結構如下:

my_package/
    __init__.py
    module1.py
    module2.py

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

print("Executing initialization code in my_package")

# 導入子模塊
from . import module1
from . import module2

然后,我們可以在另一個腳本中導入my_package包:

import my_package

print("Import completed")

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

Executing initialization code in my_package
Import completed

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

但注意,這里的執(zhí)行是指__init__.py中的代碼被執(zhí)行,并不是包中的所有模塊都被導入和執(zhí)行。只有在使用my_package中的具體模塊或對象時,才會執(zhí)行相應的代碼。

總結起來,當導入一個Python包時,包本身的代碼不會被執(zhí)行,只有在使用包內的模塊或對象時才會執(zhí)行相應的代碼。 __init__.py文件中的初始化代碼會在首次導入包時執(zhí)行一次,可用于設置包的環(huán)境和導入子模塊。

三、總結

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

此外,文章解釋了模塊的代碼只會在第一次導入時執(zhí)行一次的特性,以及導入包時執(zhí)行__init__.py文件的初始化代碼。最后,總結了導入包時只有在使用包內的模塊或對象時才執(zhí)行相應代碼,而__init__.py文件中的初始化代碼只會在首次導入包時執(zhí)行一次。

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

相關文章

  • 利用tkinter改變下拉列表(Combobox)的選項值

    利用tkinter改變下拉列表(Combobox)的選項值

    這篇文章主要介紹了利用tkinter改變下拉列表(Combobox)的選項值,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • OpenCV半小時掌握基本操作之圖像輪廓

    OpenCV半小時掌握基本操作之圖像輪廓

    這篇文章主要介紹了OpenCV基本操作之圖像輪廓,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-09-09
  • python中數據庫like模糊查詢方式

    python中數據庫like模糊查詢方式

    這篇文章主要介紹了python中數據庫like模糊查詢方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • 用python擬合等角螺線的實現示例

    用python擬合等角螺線的實現示例

    這篇文章主要介紹了用python擬合等角螺線的實現示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-12-12
  • Python中的單行、多行、中文注釋方法

    Python中的單行、多行、中文注釋方法

    今天小編就為大家分享一篇Python中的單行、多行、中文注釋方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • python中的與時間相關的模塊應用場景分析

    python中的與時間相關的模塊應用場景分析

    本文介紹了Python中與時間相關的幾個重要模塊:`time`、`datetime`、`calendar`、`timeit`、`pytz`和`dateutil`,并詳細闡述了每個模塊的主要功能和使用方法,本文通過實例代碼給大家介紹的非常詳細,需要的朋友參考下吧
    2024-12-12
  • python BlockingScheduler定時任務及其他方式的實現

    python BlockingScheduler定時任務及其他方式的實現

    這篇文章主要介紹了python BlockingScheduler定時任務及其他方式的實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-09-09
  • python3實現網頁版raspberry pi(樹莓派)小車控制

    python3實現網頁版raspberry pi(樹莓派)小車控制

    這篇文章主要為大家詳細介紹了python3實現網頁版raspberry pi(樹莓派)小車控制,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • 利用Python讀取Excel表內容的詳細過程

    利用Python讀取Excel表內容的詳細過程

    python有多種方式可以去讀取excel文檔的內容,下面這篇文章主要給大家介紹了利用Python讀取Excel表內容的詳細過程,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-10-10
  • Python簡單格式化時間的方法【strftime函數】

    Python簡單格式化時間的方法【strftime函數】

    這篇文章主要介紹了Python簡單格式化時間的方法,結合實例形式分析了Python使用strftime函數進行時間格式化的操作技巧,需要的朋友可以參考下
    2016-09-09

最新評論