最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

讓你的Python代碼實現(xiàn)類型提示功能

 更新時間:2019年11月19日 09:41:53   作者:過了即是客  
今天小編就為大家分享一篇讓你的Python代碼實現(xiàn)類型提示功能,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

Python是一種動態(tài)類型語言,這意味著我們在編寫代碼的時候更為自由,但是與此同時IDE無法向靜態(tài)類型語言那樣分析代碼,及時給我們相應的提示。為了解決這個問題,Python 3.6 新增了幾個特性PEP 484PEP 526,幫助編輯器為我們提供更智能的提示。這些新特性不會影響語言本身,只是增加一點提示。當你使用比較智能的開發(fā)工具比如PyCHarm時,就會感覺到類型提示的方便之處。

變量注解

首先先看看變量注解。它的語法和某些類型后置的語言類似。

# 變量注解
a: int = 5
b: bool = True
f: float = 5.0
s: str = "abc"

聲明類型之后,編輯器和IDE就會讀取到這個類型注解,然后給予我們相應的提示。程序在運行的時候行為完全不變。

如果是自己編寫的類,也可以用作變量注解。

class MyClass:
 def fun1(self):
  print("fun1")


me: MyClass = MyClass()
me.fun1()

對于較復雜的內(nèi)置類型、泛型、生成器、自定義類型等,需要引入標準庫typing。對于更復雜的類型,請直接參考typing標準庫文檔

from typing import TypeVar, Iterable, Tuple, Dict, List

m: Dict[int, int] = {1: 1, 2: 2}
t: Tuple[int, ...] = (1, 2, 3)
l: List[int] = [1, 2, 3, 4]

函數(shù)注解

當使用Python編寫復雜的函數(shù)時,我們常常為沒有合適的提示而苦惱。函數(shù)注解可以幫助我們解決這個問題。

def add(a: int, b: int) -> int:
 return a + b

為函數(shù)添加注解之后,當我們調(diào)用這個函數(shù)的時候,編輯器就會給予對應的提示。當處理大型項目的時候,這個特性會很有用。

函數(shù)注解保存在函數(shù)的__annotations__屬性中,如果你準備編寫程序讀取它,可以使用這個屬性。

print(add.__annotations__)

以上這篇讓你的Python代碼實現(xiàn)類型提示功能就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • pyqt5 QlistView列表顯示的實現(xiàn)示例

    pyqt5 QlistView列表顯示的實現(xiàn)示例

    這篇文章主要介紹了pyqt5 QlistView列表顯示的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-03-03
  • Python實現(xiàn)的幾個常用排序算法實例

    Python實現(xiàn)的幾個常用排序算法實例

    這篇文章主要介紹了Python實現(xiàn)的幾個常用排序算法實例例如直接插入排序、直接選擇排序、冒泡排序、快速排序等,需要的朋友可以參考下
    2014-06-06
  • Python遍歷目錄并批量更換文件名和目錄名的方法

    Python遍歷目錄并批量更換文件名和目錄名的方法

    這篇文章主要介紹了Python遍歷目錄并批量更換文件名和目錄名的方法,涉及Python針對文件與目錄的遍歷、讀取及修改等操作技巧,需要的朋友可以參考下
    2016-09-09
  • 詳解Django3中直接添加Websockets方式

    詳解Django3中直接添加Websockets方式

    這篇文章主要介紹了Django3中直接添加Websockets方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-02-02
  • python如何往列表頭部和尾部添加元素

    python如何往列表頭部和尾部添加元素

    這篇文章主要介紹了python如何往列表頭部和尾部添加元素,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • 對Python模塊導入時全局變量__all__的作用詳解

    對Python模塊導入時全局變量__all__的作用詳解

    今天小編就為大家分享一篇對Python模塊導入時全局變量__all__的作用詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • python異步爬蟲之多線程

    python異步爬蟲之多線程

    這篇文章主要介紹了python異步爬蟲之多線程,多線程可以為相關阻塞的操作單獨開啟線程或者進程,阻塞操作可以異步執(zhí)行,但是無法無限制開啟多線程或多進程,下面我們一起學習詳細內(nèi)容,需要的朋友可以參考一下
    2022-02-02
  • 人工智能學習PyTorch教程之層和塊

    人工智能學習PyTorch教程之層和塊

    這篇文章主要為大家介紹了人工智能學習Pytorch教程中的層和塊的相關知識點,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步
    2021-11-11
  • Python實現(xiàn)繪制3D條形圖的示例詳解

    Python實現(xiàn)繪制3D條形圖的示例詳解

    這篇文章主要為大家學習介紹了如何利用Python實現(xiàn)繪制3D條形圖,文中的示例代碼講解詳細,具有一定的學習價值,感興趣的小伙伴可以了解一下
    2023-07-07
  • Python使用Gradio實現(xiàn)免費的內(nèi)網(wǎng)穿透

    Python使用Gradio實現(xiàn)免費的內(nèi)網(wǎng)穿透

    內(nèi)網(wǎng)穿透是一種將內(nèi)部網(wǎng)絡服務暴露到公共網(wǎng)絡的技術,可以讓外部用戶訪問內(nèi)部網(wǎng)絡上的服務,本文將介紹如何使用Gradio實現(xiàn)免費的內(nèi)網(wǎng)穿透,需要的可以參考下
    2024-03-03

最新評論

惠东县| 进贤县| 如皋市| 清镇市| 浪卡子县| 连南| 磴口县| 东光县| 镇沅| 尼玛县| 榆中县| 南溪县| 威海市| 鄂伦春自治旗| 新疆| 班玛县| 轮台县| 惠来县| 涡阳县| 锡林郭勒盟| 万年县| 北辰区| 钟祥市| 芷江| 廉江市| 商都县| 托克逊县| 兰考县| 岚皋县| 苍梧县| 石景山区| 崇信县| 图们市| 梓潼县| 东乌| 兴义市| 马边| 青冈县| 宜君县| 皮山县| 乐安县|