python中的參數(shù)類型匹配提醒
python參數(shù)類型匹配提醒
1、對于常見類型,如下:
def a(b:str):pass
2、List 類型限制:
from typing import List def a(b:List[str]):pass
3、Dict類型限制:
from typing import Dict def a(b:Dict[str]):pass ? def c(b:Dict[str,int]):pass
4、Tuple類型:
from typing import Tuple def a(b:Tuple[str,int]):pass
5、多類型限制:
from typing import Union def a(b:Union[str,int,None]):pass
不足:
1、雖然我們指定了List[int]即由int組成的列表,但是,實(shí)際中,只要這個(gè)列表中存在int(其他的可以為任何類型),就不會(huì)出現(xiàn)警告
2、由于python是即是編譯語言,所以pycharm只是提出了警告,但實(shí)際上運(yùn)行時(shí)不一定會(huì)報(bào)錯(cuò),畢竟python的本質(zhì)還是動(dòng)態(tài)語言
Python函數(shù)參數(shù)匹配筆記
位置匹配
def func(a, b, c): ? ? print(a, b, c) func(1, 2, 3) 輸出: 1 2 3
關(guān)鍵字匹配
def func(a, b, c): ? ? print(a, b, c) func(c=1, b=2, a=3) 輸出: 3 2 1
默認(rèn)值
def func(a, b=2, c=3): ? ? print(a, b, c) func(1) 輸出: 1 2 3
傳遞任意數(shù)量參數(shù)
def avg(*scores): ? ? result = sum(scores) / len(scores) ? ? print(result) avg(60, 70, 80, 90) 輸出: 75.0
若函數(shù)參數(shù)個(gè)數(shù)不確定,定義函數(shù)時(shí)可以采取“*args”的格式,表明傳遞的參數(shù)是元組格式
傳遞的參數(shù)是元組
def avg(*scores): ? ? result = sum(scores) / len(scores) ? ? print(result) scores = (60, 70, 80, 90) avg(*scores) 輸出: 75.0
不能直接傳遞元組變量,使用函數(shù)時(shí)傳遞元組要加星號(hào)*解包
傳遞任意數(shù)量鍵值對參數(shù)
def display(**employee): ? ? print(employee) display(name='Tom', age=22, job='ev') 輸出: {'name': 'Tom', 'age': 22, 'job': 'ev'}
定義函數(shù)時(shí)使用兩個(gè)星號(hào)**表明傳遞的參數(shù)為字典表的鍵值對格式,使用函數(shù)時(shí)傳遞的參數(shù)寫成字典表的鍵值對形式
傳遞的參數(shù)是字典表
def display(**employee): ? ? print(employee) emp = {'name': 'Tom', 'age': 22, 'job': 'dev'} display(**emp) 輸出: {'name': 'Tom', 'age': 22, 'job': 'ev'}
直接傳遞字典表要加兩個(gè)星號(hào)**解包
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python 數(shù)據(jù)分析之逐塊讀取文本的實(shí)現(xiàn)
這篇文章主要介紹了Python 數(shù)據(jù)分析之逐塊讀取文本的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12python-opencv在有噪音的情況下提取圖像的輪廓實(shí)例
下面小編就為大家?guī)硪黄猵ython-opencv在有噪音的情況下提取圖像的輪廓實(shí)例。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-08-08Python+PyQT5實(shí)現(xiàn)手繪圖片生成器
這篇文章主要介紹了利用Python PyQT5制作一個(gè)手繪圖片生成器,可以將導(dǎo)入的彩色圖片通過python分析光源、灰度等操作生成手繪圖片。感興趣的可以跟隨小編一起了解一下2022-02-02Python編程中實(shí)現(xiàn)迭代器的一些技巧小結(jié)
只談迭代器的話在Python中只是一個(gè)泛指的概念,具體的可以用yield、生成器表達(dá)式、iter等多種方式來構(gòu)建,這里我們整理了Python編程中實(shí)現(xiàn)迭代器的一些技巧小結(jié):2016-06-06python3 與python2 異常處理的區(qū)別與聯(lián)系
這篇文章主要介紹了python3 與python2 異常處理的區(qū)別與聯(lián)系的相關(guān)資料,需要的朋友可以參考下2016-06-06Python腳本實(shí)時(shí)處理log文件的方法
Python腳本是用來對實(shí)時(shí)文件的內(nèi)容監(jiān)控。接下來通過本文給大家介紹Python腳本實(shí)時(shí)處理log文件的方法,需要的朋友參考下吧2016-11-11python中的print()函數(shù)end=' '的使用及說明
這篇文章主要介紹了python中的print()函數(shù)end=' '的使用及說明,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-02-02