亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

flask中過濾器的使用詳解

 更新時間:2018年08月01日 09:05:47   作者:skaarl  
這篇文章主要介紹了flask中過濾器的使用詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

過濾器

過濾器的本質(zhì)就是函數(shù)。有時候我們不僅僅只是需要輸出變量的值,我們還需要修改變量的顯示,甚至格式化、運算等等,而在模板中是不能直接調(diào)用 Python 中的某些方法,那么這就用到了過濾器。

使用方式:

過濾器的使用方式為:變量名 | 過濾器。

{{variable | filter_name(*args)}}

如果沒有任何參數(shù)傳給過濾器,則可以把括號省略掉, flask中過濾器支持鏈式調(diào)用

{{variable | filter_name}}

常見內(nèi)建過濾器

字符串操作

  • safe:禁用轉(zhuǎn)義               <p>{{ '<em>hello</em>' | safe }}</p>
  • capitalize:把變量值的首字母轉(zhuǎn)成大寫,其余字母轉(zhuǎn)小寫          <p>{{ 'hello' | capitalize }}</p>
  • lower:把值轉(zhuǎn)成小寫      <p>{{ 'HELLO' | lower }}</p>
  • upper:把值轉(zhuǎn)成大寫       <p>{{ 'hello' | upper }}</p>
  • title:把值中的每個單詞的首字母都轉(zhuǎn)成大寫 <p>{{ 'hello' | title }}</p>
  • reverse:字符串反轉(zhuǎn)      <p>{{ 'olleh' | reverse }}</p>
  • format:格式化輸出        <p>{{ '%s is %d' | format('name',17) }}</p>
  • striptags:渲染之前把值中所有的HTML標簽都刪掉       <p>{{ '<em>hello</em>' | striptags }}</p>
  • truncate: 字符串截斷           <p>{{ 'hello every one' | truncate(9)}}</p>

列表操作

  • first:取第一個元素          <p>{{ [1,2,3,4,5,6] | first }}</p>
  • last:取最后一個元素       <p>{{ [1,2,3,4,5,6] | last }}</p>
  • length:獲取列表長度       <p>{{ [1,2,3,4,5,6] | length }}</p>
  • sum:列表求和          <p>{{ [1,2,3,4,5,6] | sum }}</p>
  • sort:列表排序            <p>{{ [6,2,3,1,5,4] | sort }}</p>

自定義過濾器

過濾器的本質(zhì)是函數(shù)。當模板內(nèi)置的過濾器不能滿足需求,可以自定義過濾器。自定義過濾器有兩種實現(xiàn)方式:

  • 一種是通過Flask應用對象的 add_template_filter 方法
  • 通過裝飾器來實現(xiàn)自定義過濾器

重要:自定義的過濾器名稱如果和內(nèi)置的過濾器重名,會覆蓋內(nèi)置的過濾器。

需求:添加列表反轉(zhuǎn)的過濾器

方式一

通過調(diào)用應用程序?qū)嵗?add_template_filter 方法實現(xiàn)自定義過濾器。該方法第一個參數(shù)是函數(shù)名,第二個參數(shù)是自定義的過濾器名稱:

def do_listreverse(li):
  # 通過原列表創(chuàng)建一個新列表
  temp_li = list(li)
  # 將新列表進行返轉(zhuǎn)
  temp_li.reverse()
  return temp_li

app.add_template_filter(do_listreverse,'lireverse')

方式二

用裝飾器來實現(xiàn)自定義過濾器。裝飾器傳入的參數(shù)是自定義的過濾器名稱。

@app.template_filter('lireverse')
def do_listreverse(li):
  # 通過原列表創(chuàng)建一個新列表
  temp_li = list(li)
  # 將新列表進行返轉(zhuǎn)
  temp_li.reverse()
  return temp_li

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • python機器學習庫scikit-learn:SVR的基本應用

    python機器學習庫scikit-learn:SVR的基本應用

    這篇文章主要介紹了python機器學習庫scikit-learn:SVR的基本應用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-06-06
  • python安裝scipy的方法步驟

    python安裝scipy的方法步驟

    在本篇文章里小編給各位分享了關于python怎么安裝scipy的具體方法和實例代碼,需要的朋友們學習下。
    2019-06-06
  • Python reversed函數(shù)及使用方法解析

    Python reversed函數(shù)及使用方法解析

    這篇文章主要介紹了Python reversed函數(shù)及使用方法解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-03-03
  • Python 使用雙重循環(huán)打印圖形菱形操作

    Python 使用雙重循環(huán)打印圖形菱形操作

    這篇文章主要介紹了Python 使用雙重循環(huán)打印圖形菱形操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • Python eval函數(shù)原理及用法解析

    Python eval函數(shù)原理及用法解析

    這篇文章主要介紹了Python eval函數(shù)原理及用法解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-11-11
  • 分享給Python新手們的幾道簡單練習題

    分享給Python新手們的幾道簡單練習題

    這篇文章主要給學習Python的新手們分享了幾道簡單練習題,文中給出了詳細的示例代碼供大家學習參考,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。
    2017-09-09
  • Python3.2模擬實現(xiàn)webqq登錄

    Python3.2模擬實現(xiàn)webqq登錄

    這篇文章主要介紹了Python模擬實現(xiàn)webqq登錄的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-02-02
  • Python實現(xiàn)的堆排序算法示例

    Python實現(xiàn)的堆排序算法示例

    這篇文章主要介紹了Python實現(xiàn)的堆排序算法,結合實例形式分析了堆排序的原理及Python定義與使用堆排序算法的相關操作技巧,需要的朋友可以參考下
    2018-04-04
  • Python astype(np.float)函數(shù)使用方法解析

    Python astype(np.float)函數(shù)使用方法解析

    這篇文章主要介紹了Python astype(np.float)函數(shù)使用方法解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-06-06
  • python 列表遞歸求和、計數(shù)、求最大元素的實例

    python 列表遞歸求和、計數(shù)、求最大元素的實例

    今天小編就為大家分享一篇python 列表遞歸求和、計數(shù)、求最大元素的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11

最新評論