欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

圖文詳解Python中模塊或py文件導(dǎo)入(超詳細(xì)!)

 更新時(shí)間:2023年04月20日 10:44:24   作者:都是地址而已  
導(dǎo)入文件目的就是為了執(zhí)行文件,下面這篇文章主要給大家介紹了關(guān)于Python中模塊或py文件導(dǎo)入的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下

一、前言

聽(tīng)說(shuō)python很流行,因?yàn)橛泻芏嗄K資源,而且導(dǎo)入模塊,操作和理解起來(lái)很簡(jiǎn)單。所以在這里記錄一下學(xué)習(xí)python的過(guò)程,我相信最重要的環(huán)節(jié)就是導(dǎo)入第三方模塊了

二、python項(xiàng)目中導(dǎo)入模塊(py文件)的幾種方式

1、直接將py文件放到默認(rèn)的庫(kù)位置(特點(diǎn):高效)

在本地路徑:d:\\Z_D\\PD_P\\Python\\項(xiàng)目1目錄下運(yùn)行 test.py 文件代碼如下:

import sys
print(sys.path)

運(yùn)行結(jié)果就是打印出所有默認(rèn)的庫(kù)文件存放路徑: 

['d:\\Z_D\\PD_P\\Python\\項(xiàng)目1', 'D:\\Z_D\\PD\\python\\Python310\\python310.zip', 'D:\\Z_D\\PD\\python\\Python310\\DLLs', 'D:\\Z_D\\PD\\python\\Python310\\lib', 'D:\\Z_D\\PD\\python\\Python310', 'D:\\Z_D\\PD\\python\\Python310\\lib\\site-packages']

 整理一下就是

d:\\Z_D\\PD_P\\Python\\項(xiàng)目1

D:\\Z_D\\PD\\python\\Python310\\python310.zip

D:\\Z_D\\PD\\python\\Python310\\DLLs

D:\\Z_D\\PD\\python\\Python310\\lib

D:\\Z_D\\PD\\python\\Python310

D:\\Z_D\\PD\\python\\Python310\\lib\\site-packages

把創(chuàng)建的 my1.py 文件放在 D:\\Z_D\\PD\\python\\Python310\\lib\\site-packages 中:這里 my1.py 文件演示的代碼如下:

def testfunction():
    print("我是 D:\Z_D\PD\python\Python310\Lib\\\
        site-packages 的 my1.py \
        中的 testfunction 函數(shù)")

然后執(zhí)行 test.py 文件的測(cè)試代碼。嘗試導(dǎo)入 my1.py 文件:

import my1
my1.testfunction()

可以看到執(zhí)行結(jié)果(圖片):

 導(dǎo)入成功!

2、將文件放到創(chuàng)建的庫(kù)位置(特點(diǎn):方便管理)

上面講到我們可以直接把py文件放置到D:\\Z_D\\PD\\python\\Python310\\lib\\site-packages 路徑下,但是這么做,顯得很亂,也不便于我們管理,所以我們創(chuàng)建一個(gè)文件夾,用于放置自己的創(chuàng)建的py文件模塊:

把創(chuàng)建的 my2.py 文件放在D:\桌面\自己創(chuàng)建的庫(kù)文件夾 中:這里 my2.py 文件演示的代碼如下:

def testfunction():
    print("D:\桌面\自己創(chuàng)建的庫(kù)文件夾\my2.py中的 testfunction 函數(shù)")

然后執(zhí)行 test.py 文件的測(cè)試代碼。嘗試導(dǎo)入 my2.py 文件:

import sys
sys.path.append('D:\桌面\自己創(chuàng)建的庫(kù)文件夾')
import my2
my2.testfunction()

可以看到執(zhí)行結(jié)果(圖片):

  導(dǎo)入成功!

3、將模塊(模塊包含很多py文件)使用pip安裝到python庫(kù)中(特點(diǎn):安裝麻煩,使用時(shí)方便)

創(chuàng)建一個(gè)工作區(qū),工作區(qū)下新建一個(gè) ShareClass 文件夾 ,文件夾中新建 helloworld.py 文件 和一個(gè)空白 __init__.py 文件

編寫自己的模塊代碼,這里 helloworld.py 文件演示代碼如下:

def testfunction():
    print("helloworld.py的 testfunction 函數(shù)")

效果是這樣:

在工作區(qū)下新建一個(gè)setup.py文件,注意該文件是和ShareClass文件夾 同級(jí)目錄

這里的 setup.py文件代碼如下:

import setuptools
 
setuptools.setup(
    name="ShareClass",
    version="1.0",
    author="Beall",
    author_email="beallhuang@163.com",
    description="",
    long_description="ShareClass",
    long_description_content_type="ShareClass",
    packages=setuptools.find_packages(),
    classifiers=[
        "Programming Language :: Python :: 3",
        "License :: OSI Approved :: MIT License",
        "Operating System :: OS Independent",
    ],
)

這里用到了 setuptools 模塊,如果沒(méi)有,要進(jìn)行安裝,安裝方法自行百度。

效果是這樣:

接下來(lái),我們進(jìn)行pip安裝流程:

在工作區(qū)使用終端執(zhí)行命令,使用setup.py腳本生成壓縮包

python .\setup.py sdist  

執(zhí)行的結(jié)果就是生成了兩個(gè)文件夾:

然后執(zhí)行命令,使用pip安裝到本地庫(kù)中:

pip install .\dist\ShareClass-1.0.tar.gz

 執(zhí)行結(jié)果就是安裝成功:

然后執(zhí)行文件 test.py 的測(cè)試代碼。嘗試導(dǎo)入模塊ShareClass中的helloworld.py:

from ShareClass import helloworld 
helloworld.testfunction()

可以看到執(zhí)行結(jié)果(圖片):

創(chuàng)建模塊,安裝,并在項(xiàng)目中導(dǎo)入成功!

4、使用系統(tǒng)變量永久生成指定python庫(kù)位置(特點(diǎn):沒(méi)有缺點(diǎn),哈哈,推薦這個(gè))

上面第一種方式,放在系統(tǒng)目錄不方便管理,文件類型多,目錄深,所以找起來(lái)很不方便

第二種方式,放在指定位置,確實(shí)簡(jiǎn)單,但是使用時(shí),要額外加入下面的代碼

import sys
sys.path.append('D:\桌面\自己創(chuàng)建的庫(kù)文件夾')

對(duì)于有代碼潔癖的人來(lái),十分別扭。

第三種方式,將模塊打包安裝,雖然使用起來(lái)和第二種相同,也沒(méi)有別扭的感覺(jué),但是每次都要安裝,這樣模塊多了就很麻煩,也很不好管理

所以推薦方式4,相當(dāng)于在方式二的基礎(chǔ)上升級(jí)了一下。廢話不多說(shuō)了,直接操作:

如下圖,我的電腦,右鍵屬性=》高級(jí)系統(tǒng)設(shè)置=》環(huán)境變量=>新建,填的內(nèi)容如下,變量名一定要填寫正確,建議復(fù)制!

PYTHONPATH

D:\桌面\永久的py庫(kù)文件夾

然后檢查是否添加成功,效果如下圖

運(yùn)行一下,測(cè)試代碼如下:

import my4
my4.myfunction()

如果是在VScode中。運(yùn)行后結(jié)果如下:

遇到這個(gè)問(wèn)題,是VScode問(wèn)題,這個(gè)不重要,要解決很簡(jiǎn)單:重啟

不過(guò)這里就不要是重啟了。在項(xiàng)目目錄打開CMD運(yùn)行指令:python test.py

運(yùn)行結(jié)果如下:

導(dǎo)入成功!

三、項(xiàng)目中的python文件導(dǎo)入

1、同級(jí)文件導(dǎo)入

同級(jí)目錄創(chuàng)建my.py 文件:這里 my.py 文件演示的代碼如下:

def myfunction():
    print("helloworld.py的 myfunction 函數(shù)")

然后執(zhí)行 test.py 文件的測(cè)試代碼。嘗試導(dǎo)入 my2.py 文件:

import my
my.myfunction()

可以看到執(zhí)行結(jié)果(圖片):

導(dǎo)入成功!

2、導(dǎo)入文件夾中py文件

同級(jí)目錄創(chuàng)建my.py 文件:這里 my.py 文件演示的代碼如下:

def myfunction():
    print("my.py的 myfunction 函數(shù)")

========================================================================= 

然后執(zhí)行 test.py 文件的測(cè)試代碼。嘗試導(dǎo)入 my2.py 文件:

#導(dǎo)入my文件
import 文件夾.my as my
my.myfunction()

或者:

#導(dǎo)入my文件
from 文件夾 import my
my.myfunction()

或者

#導(dǎo)入my文件中所有的函數(shù)
from 文件夾.my import *
myfunction()

或者

#僅僅導(dǎo)入my文件中的myfunction函數(shù)
from 文件夾.my import myfunction
myfunction()

========================================================================= 

可以看到執(zhí)行結(jié)果(圖片):

導(dǎo)入成功!

總結(jié)

到此這篇關(guān)于Python中模塊或py文件導(dǎo)入的文章就介紹到這了,更多相關(guān)Python模塊或py文件導(dǎo)入內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 淺談pandas中DataFrame關(guān)于顯示值省略的解決方法

    淺談pandas中DataFrame關(guān)于顯示值省略的解決方法

    下面小編就為大家分享一篇淺談pandas中DataFrame關(guān)于顯示值省略的解決方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-04-04
  • Python中多返回值的應(yīng)用場(chǎng)景

    Python中多返回值的應(yīng)用場(chǎng)景

    Python 是一種非常靈活的編程語(yǔ)言,它允許函數(shù)返回多個(gè)值,本文主要介紹了Python中多返回值的應(yīng)用場(chǎng)景,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-06-06
  • Python編程快速上手——瘋狂填詞程序?qū)崿F(xiàn)方法分析

    Python編程快速上手——瘋狂填詞程序?qū)崿F(xiàn)方法分析

    這篇文章主要介紹了Python瘋狂填詞程序?qū)崿F(xiàn)方法,結(jié)合具體案例形式分析了Python填詞算法相關(guān)的文件讀寫、正則匹配、數(shù)據(jù)遍歷等操作技巧,需要的朋友可以參考下
    2020-02-02
  • Scrapy模擬登錄趕集網(wǎng)的實(shí)現(xiàn)代碼

    Scrapy模擬登錄趕集網(wǎng)的實(shí)現(xiàn)代碼

    這篇文章主要介紹了Scrapy模擬登錄趕集網(wǎng)的實(shí)現(xiàn)代碼,本文通過(guò)代碼圖文相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-07-07
  • Python書單 不將就

    Python書單 不將就

    對(duì)于學(xué)習(xí)Python語(yǔ)言,如何選擇合適的Python書單,是不是已經(jīng)眼花繚亂,不知道該選擇哪本好了呢?今天我來(lái)為大家分享幾本不可錯(cuò)過(guò)的Python好書
    2017-07-07
  • Python輸入圓半徑,計(jì)算圓周長(zhǎng)和面積的實(shí)現(xiàn)方式

    Python輸入圓半徑,計(jì)算圓周長(zhǎng)和面積的實(shí)現(xiàn)方式

    這篇文章主要介紹了Python輸入圓半徑,計(jì)算圓周長(zhǎng)和面積的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • Python的Flask框架中@app.route的用法教程

    Python的Flask框架中@app.route的用法教程

    這篇文章主要介紹了Python的Flask框架中@app.route的用法教程,包括相關(guān)的正則表達(dá)式講解,是Flask學(xué)習(xí)過(guò)程當(dāng)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-03-03
  • python 獲取當(dāng)天凌晨零點(diǎn)的時(shí)間戳方法

    python 獲取當(dāng)天凌晨零點(diǎn)的時(shí)間戳方法

    今天小編就為大家分享一篇python 獲取當(dāng)天凌晨零點(diǎn)的時(shí)間戳方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • Python實(shí)戰(zhàn)之異步獲取中國(guó)天氣信息

    Python實(shí)戰(zhàn)之異步獲取中國(guó)天氣信息

    這篇文章主要介紹了如何利用Python爬蟲異步獲取天氣信息,用的API是中國(guó)天氣網(wǎng)。文中的示例代碼講解詳細(xì),感興趣的小伙伴可以動(dòng)手試一試
    2022-03-03
  • Tensorflow訓(xùn)練模型越來(lái)越慢的2種解決方案

    Tensorflow訓(xùn)練模型越來(lái)越慢的2種解決方案

    今天小編就為大家分享一篇Tensorflow訓(xùn)練模型越來(lái)越慢的2種解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-02-02

最新評(píng)論