自定義 python 模塊

工作中,經(jīng)常會用python來做一些數(shù)據(jù)的驗證工作,基本上都是在單個文件中跑,時間一長就會有一些類似工具類的調用,因此不如將他們放在一個單獨的模塊中去

說明

python中的模塊有點類似java中的包名或是c++的命名空間,引用格式如下:

import matplotlib.pyplot as plt

打開模塊目錄會發(fā)現(xiàn),matplotlib是文件夾,其目錄下有一個pyplot.py的文件

實現(xiàn)步驟

  • 設置python的搜索路徑
  • 編寫模塊代碼
  • 在測試工程中引入使用

設置python的搜索路徑

查看路徑

進入命令行,輸入

import sys
sys.path

既可查看python的掃描目錄,找到其中類似包含site-packages的目錄,本機的對應目錄為:

/usr/local/lib/python2.7/site-packages/

添加目錄

如果自定義的模塊不想與Python 系統(tǒng)的模塊放在同一目錄下,可以通過.pth文件來指定搜索目錄,在上面目錄中增加一個路徑文件 user_sen_defined_modules.pth 。此文件內容就是我們自定義模塊的存放路徑。例子內容如下:

/Users/wangshengxing/code/python/modules

編寫模塊代碼

在上面的目錄中,增加工具類代碼 ,VectParser.py:

# -*- coding:utf-8 -*-
def parseVect2Str(vectStr):
    lines= vectStr.split('\n')
    oriPathX = []
    oriPathY = []
    for i in range(0,len(lines)):
        line = lines[i].split(',')
        if len(line)==2:
            strX,strY = line
            oriPathX.append(float(strX))
            oriPathY.append(float(strY))
    return oriPathX,oriPathY

在測試工程中引入使用

代碼如下:

import VectParser as vp

draw_str = '''-24.50428322260268,-102.94990820693783
-24.62928322260268,-103.26240820693783
-24.683339353781285,-103.38486994789643''

print vp.parseVect2Str(draw_str)

輸出:

([-24.50428322260268, -24.62928322260268, -24.683339353781285], [-102.94990820693783, -103.26240820693783, -103.38486994789643])
[Finished in 0.106s]
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • # Python 資源大全中文版 我想很多程序員應該記得 GitHub 上有一個 Awesome - XXX 系列...
    aimaile閱讀 26,563評論 6 427
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,285評論 25 708
  • 定義類并創(chuàng)建實例 在Python中,類通過 class 關鍵字定義。以 Person 為例,定義一個Person類...
    績重KF閱讀 3,971評論 0 13
  • 模塊簡介 在軟件開發(fā)過程中,隨著代碼的不斷增加,在一個問價里代碼就會越來越長,不容易維護。為了編寫可維護的代碼,我...
    齊天大圣李圣杰閱讀 816評論 0 0
  • 最近讀了楊臻的《PPT要你好看》,有一點小感悟。 我還記得第一次聽說楊臻名字的時候,是在看15年的演示設計峰會。當...
    Q的奇幻漂流閱讀 395評論 0 0