python模塊分析之hashlib加密(二)python
typing模塊的做用:加密
注意:typing模塊只有在python3.5以上的版本中才能夠使用,pycharm目前支持typing檢查
from typing import List, Tuple, Dict def add(a:int, string:str, f:float, b:bool) -> Tuple[List, Tuple, Dict, bool]: list1 = list(range(a)) tup = (string, string, string) d = {"a":f} bl = b return list1, tup, d,bl print(add(5,"hhhh", 2.3, False)) # 結果:([0, 1, 2, 3, 4], ('hhhh', 'hhhh', 'hhhh'), {'a': 2.3}, False)
說明:spa
在傳入參數時經過「參數名:類型」的形式聲明參數的類型;日誌
返回結果經過"-> 結果類型"的形式聲明結果的類型。code
在調用的時候若是參數的類型不正確pycharm會有提醒,但不會影響程序的運行。
對於如list列表等,還能夠規定得更加具體一些,如:「-> List[str]」,規定返回的是列表,而且元素是字符串。
因爲python天生支持多態,迭代器中的元素可能多種,以下:
from typing import List def func(a:int, string:str) -> List[int or str]: list1 = [] list1.append(a) list1.append(string) return list1 # 使用or關鍵字表示多種類型
typing經常使用的類型:
int,long,float: 整型,長整形,浮點型;
bool,str: 布爾型,字符串類型;
List, Tuple, Dict, Set:列表,元組,字典, 集合;
Iterable,Iterator:可迭代類型,迭代器類型;
Generator:生成器類型;