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

python 制作python包,封裝成可用模塊教程

 更新時(shí)間:2020年07月13日 08:46:13   作者:小菜菜1223  
這篇文章主要介紹了python 制作python包,封裝成可用模塊教程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧

首先編寫py程序:

printtest.py

def test():
print('print test')

將以上.py文件做成python模塊,需要在相同目錄下創(chuàng)建setup.py文件,setup.py中輸入配置信息:

from setuptools import setup
setup(name='printtest',
  version='1.0',
  py_modules=['printtest'],
  )

打開終端,定位到該文件夾下,輸入:

python setup.py sdist

此時(shí)在目錄中生成dist文件夾,文件夾中有testpg-1.0.tar.gz文件,用戶安裝的話只需要testpg-1.0.tar.gz文件即可。將此文件解壓得到testpg-1.0文件夾,會(huì)發(fā)現(xiàn)該文件夾有我們剛剛書寫的3個(gè)py文件,還有一個(gè)PKG-INFO,打開該文件,會(huì)顯示該模塊的具體信息:由于我們沒有設(shè)置,所以為UNKOWN

Metadata-Version: 1.0
Name: printtest
Version: 1.0
Summary: UNKNOWN
Home-page: UNKNOWN
Author: UNKNOWN
Author-email: UNKNOWN
License: UNKNOWN
Description: UNKNOWN
Platform: UNKNOWN

終端定位到此文件夾下,輸入以下命令,模塊將會(huì)被安裝到解釋器對(duì)應(yīng)的Lib/site-packages目錄下:

python setup.py install

安裝后,會(huì)發(fā)現(xiàn)Lib/site-packages目錄下存在printtest.py文件和printtest-1.0-py3.6.egg-info

應(yīng)用:

import printtest
printtest.test()

輸出:

print test

補(bǔ)充知識(shí):python 將自定義常用的一些函數(shù)封裝成可以直接調(diào)用的模塊方法

將常用一些的函數(shù)封裝成可以直接調(diào)用的模塊方法

1. 背景

在實(shí)際的操作過程中,經(jīng)常會(huì)用到一個(gè)功能,如果每次編寫代碼的時(shí)候都進(jìn)行重新編寫或者打開已經(jīng)編寫好的函數(shù)進(jìn)行復(fù)制粘貼,這樣就顯得很麻煩,有沒有什么方法可以像導(dǎo)入python模塊的那樣,直接把要用的函數(shù)以模塊名+方法的形式調(diào)用呢?

答案當(dāng)然是可以的,比如做數(shù)據(jù)分析時(shí)候經(jīng)常要使用的功能是:實(shí)現(xiàn)某一路徑下的所有xlsx的合并,文件如下

直接給出合并的函數(shù),保留數(shù)據(jù)格式篩選的接口,將合并后的數(shù)據(jù)保存在fltered_data文件夾下的data_ok.xlsx文件中

def concat_excels(pattern):
 import pandas as pd
 import os
 import glob

 if not os.path.exists('filtered_data'):
   os.mkdir('filtered_data')

 file_paths = glob.glob(pattern)
   
 df = pd.DataFrame()
 for file_path in file_paths:
   df_ = pd.read_excel(file_path)
   df = pd.concat([df,df_])
 
 df.to_excel('filtered_data/data_ok.xlsx',index = False)
 print('Finished!')
 
if __name__ == '__main__':
 concat_excels('*.xlsx')

2. 具體步驟

第一步:首先找到當(dāng)前編輯器(可能會(huì)存在多個(gè)python解析器)對(duì)應(yīng)的第三方庫的安裝路徑,如果不知道具體的位置,可以在使用的編輯器窗口輸入如下代碼,這里以requests庫為例,查看一下第三方庫的文件位置,紅色標(biāo)記的即是

第二步:將上面的函數(shù)所在py文件命名,可以以自己名字的簡(jiǎn)稱進(jìn)行命名,即方便導(dǎo)入也方便自己記住。然后將保存好的py文件移動(dòng)到上面的紅色標(biāo)記下,如下圖

第三步:在欲合并的文件夾下創(chuàng)建一個(gè)py文件(比如命名為:合并數(shù)據(jù).py),如下

第四步:編輯代碼,直接導(dǎo)入模塊和方法完成文件數(shù)據(jù)的合并,代碼運(yùn)行截圖如下,這樣就是實(shí)現(xiàn)了多文件的合并,括號(hào)中保留了合并數(shù)據(jù)的篩選格式,方便進(jìn)行之后不同格式的Excel文件的合并

from 模塊名 import * 意思是導(dǎo)入該模塊的所有的方法(可以直接調(diào)用函數(shù))

3. 擴(kuò)展

通過這種方式,就可以把我們?cè)谌粘9ぷ髦薪?jīng)常使用的方法(要實(shí)現(xiàn)的功能)都放置在以自己命名的py文件中,使用的時(shí)候直接就可以調(diào)用非常簡(jiǎn)單,如果需要添加,就打開這個(gè)py文件,把代碼復(fù)制粘貼進(jìn)去就可以了。

比如在處理圖像時(shí)候,可以直接把圖片的讀取過程中色彩的矯正和圖片的顯示封裝成函數(shù),在使用的時(shí)候一行代碼就可以實(shí)現(xiàn)之前繁雜的程序

使用演示:

以上這篇python 制作python包,封裝成可用模塊教程就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • python實(shí)現(xiàn)彩色圖轉(zhuǎn)換成灰度圖

    python實(shí)現(xiàn)彩色圖轉(zhuǎn)換成灰度圖

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)彩色圖轉(zhuǎn)換成灰度圖,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-01-01
  • PHP網(wǎng)頁抓取之抓取百度貼吧郵箱數(shù)據(jù)代碼分享

    PHP網(wǎng)頁抓取之抓取百度貼吧郵箱數(shù)據(jù)代碼分享

    本文給大家介紹PHP網(wǎng)頁抓取之抓取百度貼吧郵箱數(shù)據(jù)代碼分享,程序?qū)崿F(xiàn)了一鍵抓取帖子全部郵箱和分頁抓取郵箱兩個(gè)功能,感興趣的朋友一起學(xué)習(xí)吧
    2016-04-04
  • python常見排序算法基礎(chǔ)教程

    python常見排序算法基礎(chǔ)教程

    這篇文章主要為大家詳細(xì)介紹了python算法的基礎(chǔ)教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • python 連續(xù)不等式語法糖實(shí)例

    python 連續(xù)不等式語法糖實(shí)例

    這篇文章主要介紹了python 連續(xù)不等式語法糖實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • 使用Python的Matplotlib繪制漸變的彩色曲線

    使用Python的Matplotlib繪制漸變的彩色曲線

    這篇文章主要介紹了使用Python的Matplotlib繪制漸變的彩色曲線,Matplotlib是Python生態(tài)圈中應(yīng)用最為廣泛的2D繪圖庫,通過擴(kuò)展工具包mplot3d,也可以繪制簡(jiǎn)單的3D模型,需要的朋友可以參考下
    2023-08-08
  • Pygame與OpenCV聯(lián)合播放視頻并保證音畫同步

    Pygame與OpenCV聯(lián)合播放視頻并保證音畫同步

    Pygame的Movie模塊已經(jīng)廢棄多年,本文主要介紹了Pygame與OpenCV聯(lián)合播放視頻并保證音畫同步,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • 一行代碼挖掘文化瑰寶,Python解鎖古詩文世界

    一行代碼挖掘文化瑰寶,Python解鎖古詩文世界

    想要從文字海洋中捕獲珍珠般的古詩文嗎?通過Python爬取古詩文網(wǎng),你將掌握直搗黃龍的技能,簡(jiǎn)單幾步,讓經(jīng)典文學(xué)盡收囊中,為你的項(xiàng)目增添靈氣,需要的朋友可以參考下
    2024-03-03
  • python中的mock接口開發(fā)示例詳解

    python中的mock接口開發(fā)示例詳解

    這篇文章主要介紹了python中的mock接口開發(fā),Mock接口就是用一些合理的手段構(gòu)造對(duì)象去模擬真實(shí)接口,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-03-03
  • Python實(shí)現(xiàn)圖書管理系統(tǒng)設(shè)計(jì)

    Python實(shí)現(xiàn)圖書管理系統(tǒng)設(shè)計(jì)

    這篇文章主要為大家詳細(xì)介紹了Python實(shí)現(xiàn)圖書管理系統(tǒng)設(shè)計(jì),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Python?異步之在?Asyncio中如何運(yùn)行阻塞任務(wù)詳解

    Python?異步之在?Asyncio中如何運(yùn)行阻塞任務(wù)詳解

    這篇文章主要為大家介紹了Python?異步之在?Asyncio?中運(yùn)行阻塞任務(wù)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03

最新評(píng)論