欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python單星號(hào)(*)與雙星號(hào)(**)使用示例demo

 更新時(shí)間:2024年12月31日 09:37:24   作者:yueguang8  
這篇文章詳細(xì)介紹了Python中*與**操作符的使用場(chǎng)景及注意事項(xiàng),并通過示例代碼展示了它們?cè)诤瘮?shù)形參和實(shí)參、序列解包以及函數(shù)參數(shù)順序中的應(yīng)用,需要的朋友可以參考下

本章將詳細(xì)介紹python中*與**操作符的使用場(chǎng)景以及注意事項(xiàng),并給出示例demo。

1.作為運(yùn)算符

*表示乘法運(yùn)算

**表示乘方運(yùn)算

代碼 示例:

#1.* ** 作為運(yùn)算符
print('\n------運(yùn)算符測(cè)試------')
a = 3*2  #乘法
b = 3**2 #乘方
print("a = ", a)  #輸出6
print("b = ", b)  #輸出9

執(zhí)行結(jié)果:

2.作為函數(shù)形參

*在python中做函數(shù)形參,表示的是一個(gè)可變長(zhǎng)度的序列,類型為tuple,即將所有參數(shù)放入一個(gè)元組(tuple)中,被函數(shù)使用。

**在python中做函數(shù)形參,表示的是一個(gè)可變長(zhǎng)度的序列,類型為dict,即將所有的關(guān)鍵字參數(shù),放入一個(gè)字典(dict)中, 被函數(shù)使用。

*與**作為形參同時(shí)出現(xiàn)時(shí),**必須在最后面.

代碼示例:

#2.作為形參
print('\n------形參測(cè)試------')
def printx(*arg1, **arg2):
    print("arg1={0}, type:{1}".format(arg1, type(arg1)))
    print("arg2={0}, type:{1}".format(arg2, type(arg2)))

#調(diào)用
P1 = printx(1,2, key1=1, key2=2)

代碼執(zhí)行結(jié)果:

3.作為函數(shù)實(shí)參

在list/tuple/set前加*,會(huì)把序列中的所有元素解包成位置參數(shù)

在dict前加*,會(huì)把dict的變成位置參數(shù);加**,把字典的鍵值對(duì)變成關(guān)鍵字參數(shù)。

        A = (a,b,c)

        B = {“key1” :1, “key2”:2}

        P3 = Printx(*A)    # 等同于printx(a,b,c)

        P3 = Printx(*A, *B)   #等同于printx(a,b,c,key1,key2)

        P3 = Printx(*A, **B)   #等同于printx(a,b,c,key1=1,key2=2)

代碼示例:

def printx(*arg1, **arg2):
    print("arg1={0}, type:{1}".format(arg1, type(arg1)))
    print("arg2={0}, type:{1}".format(arg2, type(arg2)))


#3.實(shí)參測(cè)試
print('\n------實(shí)參測(cè)試------')
A = (1,2,3)
K1 = {'key1':1, 'key2':2}
P2 = printx(*A, *K1)  #注意在dict前加一個(gè)*,只把dict的 '鍵' 作為位置參傳遞
print('')
P3= printx(*A, **K1)

執(zhí)行結(jié)果:

4. 作為序列解包

注意序列解包時(shí)*解包為list,不再是tuple了

1. 先對(duì)不帶*的變量解包,剩余的數(shù)據(jù)在劃分給帶*的變量

        x,y,*z = 1,2,3,4,5 #等同于 x=1, y = 2, z= [3,4,5]

        X,*y,z = 1,2,3,4,5 #等同于 x=1, y = [2,3,4], z= 5

2. 如果左值比右值要多,那么帶 * 的變量默認(rèn)為空列表

        x,y,*z = 1,2 #等同于 x=1, y = 2, z= []  

        x,*y,z = 1,2  #x=1, y = [], z= 2

3. 單*只解包dict的鍵, **解包dict鍵值對(duì)

        key_A = {‘key1’:1, ‘key2’:2}

        key_B = {“key3” :3, “key4”:4}

        X = {*key_A}  #等同于x= {‘key1’, ’key2’}

        X = {**key_A}  #等同于x= {‘key1’:1, ‘key2’:2}

        X = {**key_A, **key_B} #等同于組包,x={‘key1’:1, ‘key2’:2, “key3” :3, “key4”:4} 

注意:組包時(shí),若鍵相同,則用后面的鍵值替換前面的,即最終合并后,為后面的鍵值對(duì)。

代碼示例:

#4.解包測(cè)試
print('\n------解包測(cè)試------')
x,y,*z = 1,2,3,4,5
print("x={0}, y= {1}, z={2}".format(x,y,z))

x,*y,z = 1,2,3,4,5
print("x={0}, y= {1}, z={2}".format(x,y,z))

x,*y,z = 1,2
print("x={0}, y= {1}, z={2}".format(x,y,z))

x,y,*z = 1,2
print("x={0}, y= {1}, z={2}".format(x,y,z))

#解包&組包
K2 = {'key3':3, 'key4':4}
K3 = {'key5':5, 'key6':6}
k4 = {**K2, **K3}
print("k4=", k4)

 執(zhí)行結(jié)果:

注意

在Python中默認(rèn)的函數(shù)參數(shù)順序是:必選參數(shù)、默認(rèn)參數(shù)、*args和**kwargs。如下所示:

        def  testFunc(name, age=10, *agrs, **kwargs):

                pass

 整體測(cè)試代碼:

import torch

#1.* ** 作為運(yùn)算符
print('\n------運(yùn)算符測(cè)試------')
a = 3*2  #乘法
b = 3**2 #乘方
print("a = ", a)  #輸出6
print("b = ", b)  #輸出9

#2.作為形參
print('\n------形參測(cè)試------')
def printx(*arg1, **arg2):
    print("arg1={0}, type:{1}".format(arg1, type(arg1)))
    print("arg2={0}, type:{1}".format(arg2, type(arg2)))

#調(diào)用
P1 = printx(1,2, key1=1, key2=2)

#3.實(shí)參測(cè)試
print('\n------實(shí)參測(cè)試------')
A = (1,2,3)
K1 = {'key1':1, 'key2':2}
P2 = printx(*A, *K1)  #注意在dict前加一個(gè)*,只把dict的 '鍵' 作為位置參傳遞
print('')
P3= printx(*A, **K1)

#4.解包測(cè)試
print('\n------解包測(cè)試------')
x,y,*z = 1,2,3,4,5
print("x={0}, y= {1}, z={2}".format(x,y,z))

x,*y,z = 1,2,3,4,5
print("x={0}, y= {1}, z={2}".format(x,y,z))

x,*y,z = 1,2
print("x={0}, y= {1}, z={2}".format(x,y,z))

x,y,*z = 1,2
print("x={0}, y= {1}, z={2}".format(x,y,z))

#解包&組包
K2 = {'key3':3, 'key4':4}
K3 = {'key5':5, 'key6':6}
k4 = {**K2, **K3}
print("k4=", k4)

運(yùn)行結(jié)果:

總結(jié) 

到此這篇關(guān)于python單星號(hào)(*)與雙星號(hào)(**)使用的文章就介紹到這了,更多相關(guān)python單星號(hào)(*)與雙星號(hào)(**)使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python 正則表達(dá)式操作指南

    Python 正則表達(dá)式操作指南

    本文是通過Python的 re 模塊來使用正則表達(dá)式的一個(gè)入門教程,和庫(kù)參考手冊(cè)的對(duì)應(yīng)章節(jié)相比,更為淺顯易懂、循序漸進(jìn)。
    2009-05-05
  • python讀取文件名并改名字的實(shí)例

    python讀取文件名并改名字的實(shí)例

    今天小編就為大家分享一篇python讀取文件名并改名字的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • PyQt5重寫QComboBox的鼠標(biāo)點(diǎn)擊事件方法

    PyQt5重寫QComboBox的鼠標(biāo)點(diǎn)擊事件方法

    今天小編就為大家分享一篇PyQt5重寫QComboBox的鼠標(biāo)點(diǎn)擊事件方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-06-06
  • python將Dataframe格式的數(shù)據(jù)寫入opengauss數(shù)據(jù)庫(kù)并查詢

    python將Dataframe格式的數(shù)據(jù)寫入opengauss數(shù)據(jù)庫(kù)并查詢

    這篇文章主要介紹了python將Dataframe格式的數(shù)據(jù)寫入opengauss數(shù)據(jù)庫(kù)并查詢,文章介紹詳細(xì)具有一定的參考價(jià)值,希望對(duì)你的學(xué)習(xí)有所幫助
    2022-04-04
  • python使用Pillow將照片轉(zhuǎn)換為1寸報(bào)名照片的教程分享

    python使用Pillow將照片轉(zhuǎn)換為1寸報(bào)名照片的教程分享

    在現(xiàn)代科技時(shí)代,我們經(jīng)常需要調(diào)整和處理照片以適應(yīng)特定的需求和用途,本文將介紹如何使用wxPython和Pillow庫(kù),通過一個(gè)簡(jiǎn)單的圖形界面程序,將選擇的照片轉(zhuǎn)換為指定尺寸的JPG格式,并保存在桌面上,需要的朋友可以參考下
    2023-09-09
  • pycharm 2019 最新激活方式(pycharm破解、激活)

    pycharm 2019 最新激活方式(pycharm破解、激活)

    這篇文章主要介紹了最新2019pycharm激活方式(pycharm破解、激活),本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-01-01
  • python 控制臺(tái)單行刷新,多行刷新實(shí)例

    python 控制臺(tái)單行刷新,多行刷新實(shí)例

    今天小編就為大家分享一篇python 控制臺(tái)單行刷新,多行刷新實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • Python中計(jì)數(shù)器Counter的使用技巧分享

    Python中計(jì)數(shù)器Counter的使用技巧分享

    計(jì)數(shù)器(Counter)是Python標(biāo)準(zhǔn)庫(kù)collections模塊中提供的一個(gè)強(qiáng)大工具,用于統(tǒng)計(jì)可哈希對(duì)象的出現(xiàn)次數(shù),本文將介紹Python中計(jì)數(shù)器的基本用法、高級(jí)功能等內(nèi)容,希望對(duì)大家有所幫助
    2023-11-11
  • Python csv文件記錄流程代碼解析

    Python csv文件記錄流程代碼解析

    這篇文章主要介紹了Python csv文件記錄流程代碼解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-07-07
  • 玩轉(zhuǎn)Python發(fā)短信的實(shí)現(xiàn)

    玩轉(zhuǎn)Python發(fā)短信的實(shí)現(xiàn)

    用Python實(shí)現(xiàn)發(fā)短信功能,當(dāng)監(jiān)控到問題出現(xiàn)時(shí),短信報(bào)警,使問題能得到及時(shí)的處理。當(dāng)然,我相信,用Python發(fā)短信應(yīng)用場(chǎng)景不止此一處,下面我們開始Python發(fā)短信的實(shí)現(xiàn),感興趣的朋友參考下吧
    2022-01-01

最新評(píng)論