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

Python flask-script 模塊詳解

 更新時間:2021年11月02日 08:50:52   作者:trnx  
Flask Script擴(kuò)展提供向Flask插入外部腳本的功能,這篇文章主要介紹了Flask之flask-script模塊使用,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

1 作用

通過 flask-script 可以以命令的形式,執(zhí)行 flask 語句。

提供向 Flask 插入外部腳本的功能,如 運(yùn)行一個開發(fā)服務(wù)器、運(yùn)行 shell、執(zhí)行數(shù)據(jù)庫腳本。

2 安裝

pip install flask-script

3 所有要運(yùn)行的命令都放在 manager.py 中

from flask import Flask
from flask_script import Manager, Command
from loguru import logger
# [ 生成一個 Flask 實(shí)例 ]
app = Flask(__name__)  
# [ Manager 構(gòu)造方法,只接受一個參數(shù),
# 就是 Flask 實(shí)例,Manager 負(fù)責(zé)追蹤整個 命令 的處理過程 ]
manager = Manager(app)  

4 三種方式 創(chuàng)建命令

4.1 方式一 創(chuàng)建 Command子類

# 定義要執(zhí)行的命令類型 Hello 繼承 Command
class Hello(Command):
    # 重寫 Command 類的 run() 方法
    def run(self):  
        ''' 要執(zhí)行的命令 '''
        logger.info('sub class of Command')  
if __name__ == '__main__':
    '''
    將 hello 命令加入到 manager ,
    第一個參數(shù)為自己起的的命令簡稱,
    第二個參數(shù)為 Command 子類 Hello 的實(shí)例
    '''
    manager.add_command('hello', Hello())  
    manager.run()

在 cmd 執(zhí)行 python manager.py hello [ hello 就是自己的 命令的簡稱 ]

這樣就會打印出 sub class of Command

4.2 方式二 使用裝飾器 @manager.command

'''
@manager.command 其實(shí) manager 就是上面初始化出來的 Manager 類的實(shí)例,
如果 Manager 類的實(shí)例名稱為 manager_1 ,則裝飾器也要改成 @manager_1.command
'''
'''
使用 裝飾器 @manager.command 后,命令的簡稱就是 函數(shù)的名字 hello_command,
在 __main__ 中 就不需要 在 通過 manager.add_command() 將 命令簡稱加入到 command 實(shí)例中了
'''
@manager.command
def hello_command(): 
    logger.info('@manager.command')
if __name__ == '__main__':
    '''
    在 __main__ 中 就不需要 在 通過 manager.add_command() 將 命令簡稱加入到 command 實(shí)例中了
    '''
    manager.run()  

在 cmd 執(zhí)行 python manager.py hello_command [ hello_command 就是自己的 命令的簡稱 ]

這樣就會打印出 @manager.command

4.3 方式三 使用裝飾器 @manager.option

'''
-u 為命令參數(shù)的 簡寫,--username 為命令參數(shù)的 全稱
(類似于 Linux 命令的參數(shù),參數(shù)簡寫 為一個 -,參數(shù)全稱為 -- ),
無論是參數(shù)的 簡寫、還是 全稱 都必須以 - 開頭,但是 全稱也可以只以 一個 - 開頭,
但建議以 兩個 - 開頭,因為更符合編碼規(guī)范,dest 的值必須與 hello_option 函數(shù)(也就是命令)的 入?yún)⒚?
稱 完全相同,因為 dest 就是表示這個參數(shù)值,傳遞給 hello_option 命令函數(shù)的那個入?yún)⒌?;default 表示
參數(shù)的默認(rèn)值,也就是如果執(zhí)行 python manager.py hello_option 執(zhí)行命令時,不帶參數(shù),就用參數(shù)的默認(rèn)
值
'''
@manager.option('-u', '--username', dest='username', default='zhangsan')  
@manager.option('-p', '--password', dest='password', default='123456')
def hello_option(username, password):
    logger.info('@manage.option')
    logger.info(f'username = {username}, password = {password}')
if __name__ == '__main__':
    '''
    在 __main__ 中 就不需要 在 通過 manager.add_command() 將 命令簡稱加入到 command 實(shí)例中了
    '''
    manager.run() 

總結(jié)

本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • python特性語法之遍歷、公共方法、引用

    python特性語法之遍歷、公共方法、引用

    這篇文章主要介紹了python特性語法之遍歷、公共方法、引用的相關(guān)資料,需要的朋友可以參考下
    2018-08-08
  • Python實(shí)現(xiàn)yaml與json文件批量互轉(zhuǎn)

    Python實(shí)現(xiàn)yaml與json文件批量互轉(zhuǎn)

    這篇文章主要為大家詳細(xì)介紹了如何利用Python語言實(shí)現(xiàn)yaml與json文件的批量互轉(zhuǎn),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以動手嘗試一下
    2022-07-07
  • Python做文本按行去重的實(shí)現(xiàn)方法

    Python做文本按行去重的實(shí)現(xiàn)方法

    每行在promotion后面包含一些數(shù)字,如果這些數(shù)字是相同的,則認(rèn)為是相同的行,對于相同的行,只保留一行。接下來通過本文給大家介紹Python做文本按行去重的實(shí)現(xiàn)方法,感興趣的朋友一起看看吧
    2016-10-10
  • python使用技巧-查找文件?

    python使用技巧-查找文件?

    這篇文章主要分享的是python使用技巧查找文件,下面我們就來介紹針對python查找文件的相關(guān)內(nèi)容,需要的小伙伴可以參考一下
    2022-02-02
  • python正則表達(dá)式對字符串的查找匹配

    python正則表達(dá)式對字符串的查找匹配

    正則表達(dá)式是一種文本模式,包括普通字符(例如,a 到 z 之間的字母)和特殊字符(稱為“元字符”),下面這篇文章主要給大家介紹了關(guān)于python正則表達(dá)式對字符串的查找匹配的相關(guān)資料,需要的朋友可以參考下
    2022-09-09
  • python 二維矩陣轉(zhuǎn)三維矩陣示例

    python 二維矩陣轉(zhuǎn)三維矩陣示例

    今天小編就為大家分享一篇python 二維矩陣轉(zhuǎn)三維矩陣示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • Python做智能家居溫濕度報警系統(tǒng)

    Python做智能家居溫濕度報警系統(tǒng)

    本文為大家?guī)砹薖ython通過HTTP協(xié)議做一個廉價的溫濕度報警系統(tǒng)。感興趣的朋友跟隨小編一起看看吧
    2018-09-09
  • 詳解pyqt5的UI中嵌入matplotlib圖形并實(shí)時刷新(挖坑和填坑)

    詳解pyqt5的UI中嵌入matplotlib圖形并實(shí)時刷新(挖坑和填坑)

    這篇文章主要介紹了詳解pyqt5的UI中嵌入matplotlib圖形并實(shí)時刷新(挖坑和填坑),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • python aiohttp的使用詳解

    python aiohttp的使用詳解

    這篇文章主要介紹了python aiohttp的使用詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-06-06
  • Python中的條件判斷語句基礎(chǔ)學(xué)習(xí)教程

    Python中的條件判斷語句基礎(chǔ)學(xué)習(xí)教程

    這篇文章主要介紹了Python中的條件判斷語句基礎(chǔ)學(xué)習(xí)教程,文中使用的是Python2.x版本但條件語句部分的使用規(guī)則未在3.x中改變,需要的朋友可以參考下
    2016-02-02

最新評論