自定義模組
阿新 • • 發佈:2020-10-29
1、自定義一個模組
匯入(拿工具箱):import
import test
test.func()
模組分類:
1、內建模組(標準庫):python直譯器自帶的.py檔案(模組)
2、第三方模組(各種大神寫的):需要額外下載的(併發程式設計)(www.pypi.org)
3、自定義模組(自己寫的):不需要額外下載
模組:
分模組的好處:
1、避免寫重複程式碼
2、可以多次利用
3、拿來主義
2、匯入發生的事情
2.1 當前的名稱空間中開闢一個新的空間(test)
2.2 將模組中所有的程式碼執行
2.3 通過模組名. 進行查詢函式(工具)
print(locals()) import test print(locals())
import test
print(test.name)
import test
print(test.func())
錯誤示例:
import test.py
print(test.py.func())
3、取別名:
3.1 使用別名能夠使檔名更短
import test as t
print(t.name)
3.2 做一個相容性
msg = """ 1.扳手 2.螺絲刀 """ choose = input(msg) if choose == "1": import meet as t elif choose == "2": import test as t t.func()
from ... import ...
from test import func
func()
import 和 from 的區別
import 把工具箱拿過來
缺點:佔用記憶體比較大
優點:不會和當前檔案定義的變數或者函式發生衝突
import test
name='123'
print(test.name)
print(name)
from:
缺點:會和當前檔案定義的變數或者函式發生衝突
from test import name
name = "123"
print(name)
解決衝突:
name = "123" from test import name as n print(name) print(n)
優點:佔用記憶體比較小
from ... import * :把工具拿走,留下工具箱(不建議使用)
name = "123"
from test import *
print(name) # pycharm飄紅不一定是報錯
all = ["可以被匯入的函式名和變數名"] :放在自定義模組裡
from test import *
print(func)
print(name)
模組的兩種用法:
1、指令碼(在cmd中執行python test.py)
2、模組(不使用或者匯入)
在當前模組中使用 name 就是"main"
當模組被匯入的時候 name 就是被匯入的模組名
匯入路徑:
當模組不在同一路徑時查詢相對路徑: from 資料夾名.資料夾名 import 模組名
當模組不在同一路徑時查詢絕對路徑:
from sys import path
path.insert(0, "絕對路徑")
自定義 > 內建 > 第三方