python函數可變長參數_day14 Python函數之可變長參數

函數參數

1.形參變量只有在被調用時才分配內存單元,在調用結束時,即刻釋放所分配的內存單元。因此,形參只在函數內部有效。函數調用結束返回主調用函數后則不能再使用該形參變量

2.實參可以是常量、變量、表達式、函數等,無論實參是何種類型的量,在進行函數調用時,它們都必須有確定的值,以便把這些值傳送給形參。因此應預先用賦值,輸入等辦法使參數獲得確定值

a傳給了x。b傳給了y。

3.位置參數和關鍵字(標準調用:實參與形參位置一一對應;關鍵字調用:位置無需固定)

#位置參數,必須一一對應,否則報錯,缺一個或者多一個不行

def test1(x,y,z):

print(x)

print(y)

print(z)

test1(1,3,5)

結果:

1

3

5

#關鍵字參數,不需要一一對應,缺一個或者多一個不行

def test1(x,y,z):

print(x)

print(y)

print(z)

test1(y=1,z=3,x=5)

結果:

5

1

3

位置參數和關鍵字混搭

#位置參數必須在關鍵字參數左邊

def test1(x,y,z):

print(x)

print(y)

print(z)

test1(1,3,z=5)

#z=5換成y=5會報錯,因為按照順序,5會覆蓋3,但是z值沒有

結果:

1

3

5

4.默認參數

def handle(x,type="None"):

print(x,type)

handle("hello")

handle("hi",type="how are you")

handle("ll","ii")

結果:

hello None

hi how are you

ll ii

5.參數組

**跟字典有關系

*跟列表有關系

**,*args在最后放著表示可擴展性!!!!

*

def test(x,*args):

print(x)

print(x,args)

print(args)

print(args[0])

print(*args[0])

test(1,["c","v","b"],5,6,7,8)

結果:

1

1 (['c', 'v', 'b'], 5, 6, 7, 8)

(['c', 'v', 'b'], 5, 6, 7, 8)

['c', 'v', 'b']

c v b

**

def test01(x,**kwargs):

print(x)

print(kwargs)

test01(1,name="charon",age=10)

結果:

1

{'name': 'charon', 'age': 10}

結合:*args千萬不能在后面,否則報錯,位置參數必須在關鍵字參數前面

def test01(x,*args,**kwargs):

print(x)

print(args,args[1])

print(kwargs)

test01(1,"vv",2,"bb",name="charon",age=10)

結果:

1

('vv', 2, 'bb') 2

{'name': 'charon', 'age': 10}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/533949.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/533949.shtml
英文地址,請注明出處:http://en.pswp.cn/news/533949.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

ubuntu 安裝java jdk_「ubuntu安裝jdk」Ubuntu安裝jdk8的兩種方式 - seo實驗室

ubuntu安裝jdk安裝方式:1):通過ppa(源) 方式安裝.2):通過官網安裝包安裝.JDK官網下載地址一:使用ppa(源)方式安裝:1):添加ppa源sudo add-apt-repository ppa:webupd8team/javasudo apt-get update2)&#x…

restful風格_什么是RESTful風格的API設計?

隨著移動互聯網的興起,RESTful風格的API設計也隨之流行起來,但我們說了那么多RESTful設計,它到底是什么?本篇文章帶大家來了解一下它的真實面目。RESTful概念首先,我們需要明確的是RESTful,它是一個理念&am…

java jdbc 增刪改封裝_JAVA JDBC 常規增刪改查簡單封裝

JAVA JDBC 常規增刪改查簡單封裝,可滿足大多基本要求作用:1, 查詢列表是直接返回List對象,不必再遍歷;2, 單條查詢直接返回對象;3, 執行sql僅需一個方法搞定;package com.Main.Tools…

python wget安裝_Macbook系統環境安裝wget的2個方法 - 傳統包及Homebrew安裝

考慮到自身項目的拓展需要,朋友建議學習Python爬蟲這樣對于做大數據采集有較大的幫助,老蔣雖然每天也都接觸一些腳本和程序的修改,但是并沒有專業和系統的學習某一項編程。所以還是準備陸續的學習Python語言,無論有沒有基礎&#…

java 程序找錯_java代碼找錯

展開全部你試一下這個行不行,輸入的時候是數字e69da5e6ba903231313335323631343130323136353331333335313138,數字,數字;數字,數字。。。。。的格式,你把我注釋的那個輸入行(String stInput input.next();)的注釋去掉,把我字符串寫死的那行(…

zookeeper 分布式鎖_關于redis分布式鎖,zookeeper分布式鎖原理的一些學習與思考

編輯:業余草來源:https://www.xttblog.com/?p4946首先分布式鎖和我們平常講到的鎖原理基本一樣,目的就是確保,在多個線程并發時,只有一個線程在同一刻操作這個業務或者說方法、變量。在一個進程中,也就是一…

Java線程怎么發送消息_Java客戶端Socket如何能在阻塞線程下收到服務端發送來的消息?...

最近在寫Socket客戶端的時候遇到點問題客戶端在創建時創建了2個線程一個監聽鍵盤輸入事件,使用的是buffered,當檢測到輸入完成時寫入流發送給服務端。String content "";while (!(content bufferedReader.readLine()).equals("exit&quo…

python函數參數傳遞機制_Python 學習筆記(一) 理解Python的函數傳參機制

對于剛接觸Python不久的新手,Python的函數傳參機制往往會讓人迷惑。學過C的同學都知道函數參數可以傳值或者傳地址。比如下面這段代碼點擊(此處)折疊或打開void func(int input) {input 100;}int a 0;func(a);printf("%d", a);結果應該是打印0&#xff…

網頁無法調用java9_JAVA 9 (內部類,異常,包)

內部類:將一個類定義在另一個類里面,稱里面那個類為內部類。舉例:class Zx{public static void main(String []arr){Outer o new Outer();o.method();}}class Outer{class Inner //內部類,可以定義多個內部類{void function(){S…

python renamer模塊_Python - 批量文件重命名

兩個目標兩個:1. 輸入一組文件名,進行批量重命名;2. 輸入一組目錄名,批量重命名各個目錄下的文件。附加功能:1. 可根據文件的創建日期對文件重新排序;2. 重命名方式為遞增數列,可帶前后綴&#…

spark算子_Spark篇之持久化算子

一、前述Spark中控制算子也是懶執行的,需要Action算子觸發才能執行,主要是為了對數據進行緩存。控制算子有三種,cache,persist,checkpoint,以上算子都可以將RDD持久化,持久化的單位是partition。cache和persist都是懶執…

java g1 gc ref proc_深入理解垃圾收集器的G1及日志分析

盡管Hotspot 最新的垃圾回收器G1是在2006年推出的。但是G1從推行至今的市場反響來看,但現在足以證明這款垃圾收集器是經得起考驗的,從java9開始,就默認為G1垃圾收集器。G1是一款面向服務端應用的垃圾收集器。HotSpot開發團隊賦予它的使命是(在…

python爬取嗶哩嗶哩視頻_Python實現視頻爬取下載

注:源內容來自公眾號【python學習開發】一般情況下我們使用爬蟲更多的是對數據或者圖片進行爬取,今天在這里和大家分享一下關于使用爬蟲技術來進行視頻下載的方法,不僅可以方便的下載一些體積小的視頻,針對大容量的視頻下載同樣試用。接下來我們來介紹此次爬取視頻過…

java約瑟夫環pta上_cdoj525-猴子選大王 (約瑟夫環)

約瑟夫斯問題問題有時候也被描述成猴子選大王問題,題目如下.(最后會貼上約瑟夫問題的來歷) 一群猴子排成一圈,按1,2,…,n依次編號. 然后從第1只開始數,數到第m只,把它踢出圈,從它后面再開始數,再數到第m只,在把它踢出去…,如此不停的進行下去,直到最后只剩下一只猴子為止,那只猴…

java++記錄+運行_記錄java+testng運行selenium(三)---xml、ini、excel、日志等配置

一: ini文件ini目前只用處存儲瀏覽類型及需要打開的url,ini文件放在configs文件夾下面。讀取ini代碼如下:1 packagetoolskit.documents;23 import java.io.*;4 import java.util.*;56 /**7 * ClassName: ReadIni8 * Author: DingDong9 * D…

python字符串前面加f什么意思_Python 字符串前面加u,r,b,f的含義

1、字符串前加 u例:u"我是含有中文字符組成的字符串。"作用:后面字符串以 Unicode 格式 進行編碼,一般用在中文字符串前面,防止因為源碼儲存格式問題,導致再次使用時出現亂碼。2、字符串前加 r例&#xff1a…

mysql居左查詢abcd_MySql速查手冊

索引定義索引用來快速地尋找那些具有特定值的記錄,所有MySQL索引都以B樹的形式保存。就像是數據的目錄。索引類型唯一索引主鍵索引B-Tree普通索引R-Tree聯合索引Hash全文索引FullText在mysql中fulltext索引只針對myisam生效。符合索引對于創建的多列索引(復合索引)&…

和python哪個容易胖_為什么有些人特別容易胖?

7種人,最容易被肥胖盯上,其中有你嗎?胖,總是來得猝不及防,肥肉也總是不知不覺地長出來……許多胖友對自己的身材老摸不著腦,其實,長胖都是有跡可循的!正如下面這7類人,就…

loadrunner 錯誤: 無法找到 java.exe_LoadRunner錯誤及解決方法總結

1. error:missing newline in d:\loadrunner\name.dat場景執行時報error:missing newline in d:\loadrunner\name.dat第二次執行不報兩個解決辦法:第一:如果參數不是很多的話,不要打開記事本去編輯參數,就直接在LR提供的參數的表格…

gif透明背景動畫_【超實用干貨! 】iPad上的動畫App大推薦

作者/立夏編輯/彼方大家好,我是立夏。大概在兩年前吧我為大家寫過幾款動畫APP的評測,這一次我也想給大家推薦一些我的新寵,供大家參考。我在這里就不過多提及如Animation Desk、Procreate或是Callipeg之類知名度相對更高一些的動畫App了&…