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

python中為main方法傳參問題

 更新時間:2022年11月09日 11:22:15   作者:淅瀝加油  
這篇文章主要介紹了python中為main方法傳參問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

python為main方法傳參

執(zhí)行python腳本的時候,想給main方法傳入?yún)?shù)的例子

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Author(s): xili
# @Created: 2020/6/30
import sys
?
if __name__ == '__main__':
? ? arg1 = sys.argv[1]
? ? arg2 = sys.argv[2]
? ? print(arg1)
? ? print(arg2)

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

[root@xili]# python test1.py  1 2
1
2

python函數(shù)傳參的幾種方式

python函數(shù)的參數(shù)類型分為以下五種

  • 位置參數(shù)
  • 默認參數(shù)
  • 可變參數(shù)(*args)
  • 關(guān)鍵字參數(shù)(**args)
  • 命名關(guān)鍵字參數(shù)

位置參數(shù)

調(diào)用函數(shù)時傳的實參與函數(shù)的形參位置上一一對應(yīng)的參數(shù),如下:

#!/usr/bin/python
# -*- coding: utf-8 -*-
def info(name,age,major):
? ? print("姓名:%s"%(name))
? ? print("年齡:%s"%(age))
? ? print("職業(yè):%s"%(major))
info("zhulang",27,"IT") ?#實參與形參一一對應(yīng)

打印結(jié)果為:

姓名:zhulang
年齡:27
職業(yè):IT

默認參數(shù)

在定義函數(shù)的時候,給形參一個默認的值,如下:

#!/usr/bin/python
# -*- coding: utf-8 -*-
def info(name,major,age=25): #默認參數(shù)必須放在位置參數(shù)后面,否則出錯
? ? print("姓名:%s"%(name))
? ? print("年齡:%s"%(age))
? ? print("職業(yè):%s"%(major))
info("zhulang","IT")

打印結(jié)果為:

姓名:zhulang
年齡:25
職業(yè):IT

注意:

1、一個參數(shù)帶參數(shù)名,另一個參數(shù)不帶參數(shù)名,其中默認參數(shù)必須帶參數(shù)名;

2、如果形參中默認參數(shù)在必須參數(shù)之前,那么調(diào)用函數(shù)時實參中默認參數(shù)也應(yīng)當(dāng)在前面;如果形參中默認參數(shù)在必須參 數(shù)之后,那么調(diào)用函數(shù)時實參中默認函數(shù)應(yīng)當(dāng)在后面,否則會報錯

可變參數(shù)

可變參數(shù)就是傳入的參數(shù)個數(shù)是可變的,可以是1個、2個到任意個,還可以是0個,*args將所有的實參的位置參數(shù)聚合到一個元組,并將這個元組賦值給args

如下函數(shù):

def calc(l):
? ? sum = 0
? ? for n in l:
? ? ? ? sum += n
? ? return sum
calc([1,2,3]) #參數(shù)傳入的是列表,結(jié)果為7

如果用可變參數(shù)類型傳參,可變成如下:

def calc(*nums):
? ? sum = 0
? ? for n in nums:
? ? ? ? sum += n
? ? return sum

這樣以來,參數(shù)可以傳入任意多個,函數(shù)內(nèi)部,參數(shù)接受到的是一個元組,傳入?yún)?shù)時,可寫成:cal(1,2,3,4),可跟多個參數(shù),無限制寫下去,如果有一個列表了,想把列表元素傳進去,可寫成如下:

>>> nums = [1, 2, 3]
>>> calc(*nums)
7

*nums表示把nums這個list的所有元素作為可變參數(shù)傳進去

關(guān)鍵字參數(shù)

關(guān)鍵字參數(shù)允許你傳入0個或任意個含參數(shù)名的參數(shù),這些關(guān)鍵字參數(shù)在函數(shù)內(nèi)部自動組裝為一個dict,在傳遞參數(shù)時用等號(=)連接鍵和值

def person_info(name, age, **kw):
? ? print("name", name, "age", age, "other", kw)
>>> person_info("zhulang", 12)
name zhulang age 12 other{}
>>> person_info("zhulang", 27, city = "Beijing")
name zhulang age 27 other {'city':'Beijing'}

命名關(guān)鍵字參數(shù)

和普通關(guān)鍵字參數(shù)不同,命名關(guān)鍵字參數(shù)需要一個用來區(qū)分的分隔符*,它后面的參數(shù)被認為是命名關(guān)鍵字參數(shù)

#這里星號分割符后面的city、job是命名關(guān)鍵字參數(shù)
person_info(name, age, *, city, job):
? ? print(name, age, city, job)
?
>>> person_info("zhulang", 17, city = "Beijing", job = "Engineer")
zhulang 17 Beijing Engineer ? ?#看來這里不再被自動組裝為字典

總結(jié):參數(shù)在書寫時要遵循一定的順序,即:位置參數(shù)、默認參數(shù)、變長參數(shù)、關(guān)鍵字參數(shù)、命名關(guān)鍵字參數(shù)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python 自由定制表格的實現(xiàn)示例

    Python 自由定制表格的實現(xiàn)示例

    這篇文章主要介紹了Python 自由定制表格的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • Python數(shù)據(jù)結(jié)構(gòu)與算法之完全樹與最小堆實例

    Python數(shù)據(jù)結(jié)構(gòu)與算法之完全樹與最小堆實例

    這篇文章主要介紹了Python數(shù)據(jù)結(jié)構(gòu)與算法之完全樹與最小堆,結(jié)合實例形式分析了Python完全樹定義及堆排序功能實現(xiàn)相關(guān)操作技巧,需要的朋友可以參考下
    2017-12-12
  • 利用Python進行圖像的加法,圖像混合(附代碼)

    利用Python進行圖像的加法,圖像混合(附代碼)

    這篇文章主要介紹了利用Python進行圖像的加法,圖像混合(附代碼),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • Pycharm安裝各種庫(第三方庫)的兩種方法

    Pycharm安裝各種庫(第三方庫)的兩種方法

    這篇文章主要給大家介紹了關(guān)于Pycharm安裝各種庫(第三方庫)的兩種方法,Pycharm中通常需要安裝很多第三方庫,才可以使用相應(yīng)的拓展功能,需要的朋友可以參考下
    2024-01-01
  • Python+selenium實現(xiàn)截圖圖片并保存截取的圖片

    Python+selenium實現(xiàn)截圖圖片并保存截取的圖片

    這篇文章介紹如何利用Selenium的方法進行截圖并保存截取的圖片,需要的朋友參考下本文
    2018-01-01
  • Python調(diào)用騰訊云短信服務(wù)發(fā)送手機短信

    Python調(diào)用騰訊云短信服務(wù)發(fā)送手機短信

    這篇文章主要為大家介紹了Python調(diào)用騰訊云短信服務(wù)發(fā)送手機短信,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-05-05
  • 學(xué)懂Python字符編碼避免亂碼陷阱

    學(xué)懂Python字符編碼避免亂碼陷阱

    在Python編程中,處理字符編碼和亂碼問題是一個常見的挑戰(zhàn),特別是在處理文本數(shù)據(jù)、文件輸入/輸出和網(wǎng)絡(luò)通信時,可能會遇到各種字符編碼問題,本文章將深入探討Python中的亂碼問題,解釋其原理,并提供解決辦法,以確保你的應(yīng)用程序能夠正確處理各種編碼情況
    2023-12-12
  • 為何人工智能(AI)首選Python?讀完這篇文章你就知道了(推薦)

    為何人工智能(AI)首選Python?讀完這篇文章你就知道了(推薦)

    這篇文章主要介紹了為何人工智能(AI)首選Python,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • Python?Requests使用Cookie的幾種方式詳解

    Python?Requests使用Cookie的幾種方式詳解

    這篇文章主要給大家介紹了關(guān)于Python?Requests使用Cookie的幾種方式,Python中的requests庫可以使用cookie來維持會話狀態(tài),實現(xiàn)登錄等操作,需要的朋友可以參考下
    2023-07-07
  • Python實現(xiàn)的歸并排序算法示例

    Python實現(xiàn)的歸并排序算法示例

    這篇文章主要介紹了Python實現(xiàn)的歸并排序算法,簡單描述了歸并排序算法的原理,并結(jié)合實例形式分析了Python實現(xiàn)歸并排序的具體操作技巧,需要的朋友可以參考下
    2017-11-11

最新評論