日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

【1】python模块:自定义模块的3种导入方式

發布時間:2023/12/13 综合教程 27 生活家
生活随笔 收集整理的這篇文章主要介紹了 【1】python模块:自定义模块的3种导入方式 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、定義

模塊就是用一堆的代碼實現了一些功能的代碼的集合,通常一個或者多個函數寫在一個.py文件里,而如果有些功能實現起來很復雜,那么就需要創建n個.py文件,這n個.py文件的集合就是模塊。如果不懂可以先看下面這篇博文:
https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/0014318447437605e90206e261744c08630a836851f5183000

二、類型

1、標準模塊

  python自帶的模塊,不需要安裝包,直接import就可以使用

2、第三方模塊

  第三方開源模塊通常需要自己去下載

3、自定義模塊

自己寫的實現自己某些功能的.py文件集合

二、標準模塊

我們這里主要列舉幾個常用的標準模塊:

import random  #隨機數模塊
print(random.randint(1,100))# 在1-100里隨機取一個整數
print(random.uniform(1,900))# 取一個小數,顧頭也顧尾

stus=['zhangsan','lisi','xiaohong']
print(random.choice(stus))#隨機取一個元素
print(random.choice('sdfgadsgadfg'))

print(random.sample(stus,2))# 隨機取兩個元素

l=list(range(1,101))
print('洗牌之前的',l)
print(random.shuffle(l)) #洗牌,也就是打亂,沒有返回值,只能傳list,所以下面要在print一下
print('洗牌之后的',l)

三、第三方模塊

大牛們開源共享許多模塊也加快了大家開發的速度,許多開源模塊可以在這里找到

https://pypi.python.org/pypi

1、安裝第三發模塊

pip install xxx

2、手動安裝:

  (1)下載.whl文件

  pip install e:\dowload\pymysql.whl

  (2)下載 .tar.gz文件

  ---解壓

  ---進入目錄執行 python setup.py install pymysql.tar.gz

3、列出當前裝了哪些模塊

pip list

4、導出當前已經安裝的模塊

freeze > 第三方模塊.txt

5、指定文件批量安裝模塊

pip install -r第三方模塊.txt

四、python自定義模塊的導入方式

1、直接import

這里有個大前提,就是你的py執行文件和模塊同屬于同個目錄(父級目錄),如下圖:

main.py 和 pwcong模塊同在python目錄
執行文件為main.py
pwcong文件夾為一個模塊

我把pwcong模塊提供的函數寫在 __init__.py 里,里面只提供一個 hi 函數:

# pwcong 模塊的 __init__.py
# -*- coding: utf-8 -*-

def hi():
    print("hi")

執行文件main.py直接import模塊:

# main.py
# -*- coding: utf-8 -*-

import pwcong

pwcong.hi()

接著我們運行一下main.py可以看到命令行窗口輸出了一句 hi ,第一種方式完成。

2、通過sys模塊導入自定義模塊的路徑path

如果執行文件和模塊不在同一目錄,這時候直接import是找不到自定義模塊的。如下圖:

執行文件main.py在main目錄下
pwcong模塊在python目錄下

sys模塊是python內置的,因此我們導入自定義模塊的步驟如下:

先導入sys模塊
然后通過sys.path.append(path) 函數來導入自定義模塊所在的目錄。
使用sys.path.append()方法可以臨時添加搜索路徑,方便更簡潔的import其他包和模塊。這種方法導入的路徑會在python程序退出后失效。
使用sys.path.insert(0,'r'/Users/PycharmProjects/my_python/')定義搜索路徑的優先順序,序號從0開始,表示最大優先級,sys.path.insert()加入的也是臨時搜索路徑,程序退出后失效。
導入自定義模塊。

這時候 main.py 這樣寫:

# main.py
# -*- coding: utf-8 -*-

import sys
sys.path.append(r"C:UsersPwcongDesktoppython")

import pwcong

pwcong.hi()

最后執行main.py文件,最終輸出 hi ,第二種方式完成。

3、在環境變量中找到自定義模塊

這個方法原理就是利用了系統變量,python會掃描path變量的路徑來導入模塊,可以在系統path里面添加。

模塊和執行文件目錄結構跟上圖一樣:

執行文件main.py在main目錄下
pwcong模塊在python目錄下

我們創建一個 module_pwcong.pth 文件,里面內容就是 pwcong模塊所在的目錄:

C:UsersPwcongDesktoppython

將該 module_pwcong.pth 文件放到這里:
python安裝目錄Python35Libsite-packages

例如我的:

然后 main.py 導入并使用自定義模塊:

# -*- coding: utf-8 -*-

import pwcong

pwcong.hi()

最后執行 main.py 文件,可以輸出 hi ,第三種方式完成。

注意:使用pycham可以把文件夾加到環境變量中

直接在文件夾上右鍵 mark directory as 選擇 scorce root 直接把文件夾加到環境變量中。

總結

以上是生活随笔為你收集整理的【1】python模块:自定义模块的3种导入方式的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。