攝影或3C

Python, typing: 函數庫規格標註; def addTest(x:float, y:float) -> float: List[資料型態] Set[資料型態] Tuple[資料型態] Dict[str,value的資料型態] Union[資料型態1, 資料型態2] ,函式若有多個輸出值,其實是輸出一個tuple

def addTest(x:float,y:float)->float:
return x+y

x = “p”
y = “q”
print(addTest(x,y))
#typing沒有強制力
#硬要輸入字串

x = 1.2
y = 2.8
print(addTest(x,y))

 

dict用{key : value} 建構

Dict[str , value的資料型態]

中間卻是使用, 非:

 

 

import typing
cmd:typing.Dict[str,bytes] = {
“ConfigBig” : b’\x00C\x00o\x00n\x00f\x00i\x00g’,
“ControlBig” : b’\x00C\x00o\x00n\x00t\x00r\x00o\x00l’,
“ReControlBig”: b’\x00R\x00e\x00C\x00o\x00n\x00t\x00r\x00o\x00l’,
“StopBig” : b’\x00S\x00t\x00o\x00p’
}
#command使用大端,用ctrl_socket.send()傳送

 

如果自定義函式輸出

兩個以上的結果

其實是輸出一個tuple

若兩個結果的資料型態不同

可以用以下的方法typing

from typing import Tuple 

def gainParam2(Gain_P:list,DO:int=0)-> Tuple[bytes,list]:

#DO:int=0 ,先typing,再預設值

#有預設值的參數需要放最後面

#DO後面不能再有其他

#無預設值的參數

 

函式若有多個輸出值,

其實是輸出一個tuple:

 

這樣也可以Typing:

或者:

推薦hahow線上學習python: https://igrape.net/30afN

儲蓄保險王

儲蓄險是板主最喜愛的儲蓄工具,最喜愛的投資理財工具則是ETF,最喜愛的省錢工具則是信用卡