最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

利用Python腳本實(shí)現(xiàn)傳遞參數(shù)的三種方式分享

 更新時(shí)間:2022年12月05日 16:52:17   作者:Mrwhite86  
使用python腳本傳遞參數(shù)在實(shí)際工作過(guò)程中還是比較常用。這篇文章為大家總結(jié)了三個(gè)常用的方式,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下

背景:使用python腳本傳遞參數(shù)在實(shí)際工作過(guò)程中還是比較常用,以下提供了好幾種的實(shí)現(xiàn)方式:

一、使用sys.argv的數(shù)組傳入

說(shuō)明:使用sys.argv必須按照先后的順序傳入對(duì)應(yīng)的參數(shù);sys.argv則封裝了傳入的參數(shù)數(shù)據(jù),作為數(shù)組的方式已經(jīng)傳入

import sys

print("傳入?yún)?shù)的總長(zhǎng)度為:", len(sys.argv))
print("type:", type(sys.argv))
print("function name:", sys.argv[0])
try:
    print("第一個(gè)傳入的參數(shù)為:", sys.argv[1])
    print("第二個(gè)傳入的參數(shù)為:", sys.argv[2])
except Exception as e:
    print("Input Error:", e)

通過(guò)命令行查看運(yùn)行結(jié)果:

二、使用argparse包傳入

說(shuō)明:parser.add_argument 方法的type參數(shù)理論上可以是任何合法的類(lèi)型,而且傳入的順序并沒(méi)有要求

參數(shù)使用的說(shuō)明:

  • --xx  完整參數(shù)輸入
  • -x    簡(jiǎn)寫(xiě)參數(shù)輸入
  • type  輸入的參數(shù)將要被轉(zhuǎn)換的數(shù)據(jù)類(lèi)型
  • default 默認(rèn)值
  • help   參數(shù)介紹
  • nargs  可傳入的參數(shù)數(shù)量
  • required  是否為必須參數(shù)
import argparse
parser = argparse.ArgumentParser(description='argparse testing')
parser.add_argument('--name','-n',type=str, default = "bk",required=True,help="a programmer's name")
parser.add_argument('--age','-a',type=int, default=35,help='age of the programmer')
parser.add_argument('--sex','-s',type=str, default='male')
parser.add_argument('--favorite','-f',type=str, nargs="+",required=False,help="favorite of the programmer")

args = parser.parse_args()
print(args.name)
print(args.age)
print(args.sex)
print(args.favorite)

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

1.使用完整參數(shù)輸入

2.使用簡(jiǎn)寫(xiě)參數(shù)輸入

3.多參數(shù)的傳入

三、使用shell腳本的方式向python腳本傳遞參數(shù)

1.使用shell腳本向python腳本傳遞參數(shù)

python腳本依然使用sys.argv的數(shù)組的方式傳入?yún)?shù)

原python如下:(python_test.py)

import sys

print("傳入?yún)?shù)的總長(zhǎng)度為:", len(sys.argv))
print("type:", type(sys.argv))
print("function name:", sys.argv[0])
try:
    print("第一個(gè)傳入的參數(shù)為:", sys.argv[1])
    print("第二個(gè)傳入的參數(shù)為:", sys.argv[2])
except Exception as e:
    print("Input Error:", e)

增加shell腳本如下:(shell_test.sh)

#!/bin/bash
#定義變量
para1=$1
para2=$2
python python_test.py $para1 $para2

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

2.使用shell腳本向python腳本內(nèi)的方法傳遞參數(shù)

python腳本如下:(python_test.py)

def fun1():
    return "無(wú)參數(shù)方法fun1"

def fun2(x):
    return f"有參數(shù)方法fun2且傳入的參數(shù)為{x}"

shell腳本如下:(shell_test.sh)

(1)無(wú)參數(shù)方式調(diào)用:

#!/bin/bash
#定義變量
python -c 'import python_test;print(python_test.fun1())'

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

(2)有參數(shù)方式調(diào)用

#!/bin/bash
#定義變量
para=$1
python -c "import python_test;print(python_test.fun2('${para}'))"

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

 (3)一次調(diào)用所有方法,放入一個(gè)集合中,再調(diào)用切割方法獲取相應(yīng)的值

#!/bin/bash
#定義變量
para=$1
#將結(jié)果保存為一個(gè)變量ALL_RESULTS內(nèi)
ALL_RESULTS=$(python -c "import python_test;print(python_test.fun1(),python_test.fun2('${para}'))")
#分別打印第一個(gè)方法的返回與第二個(gè)方法的返回
RESULTS_fun1=$(echo $ALL_RESULTS | cut -d' ' -f1)
RESULTS_fun2=$(echo $ALL_RESULTS | cut -d' ' -f2)
echo fun1方法的返回結(jié)果為:$RESULTS_fun1
echo fun2方法的返回結(jié)果為:$RESULTS_fun2

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

到此這篇關(guān)于利用Python腳本實(shí)現(xiàn)傳遞參數(shù)的三種方式分享的文章就介紹到這了,更多相關(guān)Python腳本傳遞參數(shù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python基于WebSocket實(shí)現(xiàn)簡(jiǎn)易屏幕共享工具

    Python基于WebSocket實(shí)現(xiàn)簡(jiǎn)易屏幕共享工具

    這篇文章主要為大家詳細(xì)介紹了Python如何基于WebSocket實(shí)現(xiàn)簡(jiǎn)易屏幕共享工具,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2025-01-01
  • Python錯(cuò)誤和異??偨Y(jié)詳細(xì)

    Python錯(cuò)誤和異??偨Y(jié)詳細(xì)

    本文詳細(xì)且清晰地講解了Python中錯(cuò)誤和異常的概念及其處理方式,通過(guò)具體案例展示try...except、try...finally、with...等句式的具體用法,期望能幫助到對(duì)此感到迷惑的初學(xué)者
    2021-10-10
  • Django 創(chuàng)建/刪除用戶的示例代碼

    Django 創(chuàng)建/刪除用戶的示例代碼

    這篇文章主要介紹了Django 創(chuàng)建/刪除用戶的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-07-07
  • PyTorch線性回歸和邏輯回歸實(shí)戰(zhàn)示例

    PyTorch線性回歸和邏輯回歸實(shí)戰(zhàn)示例

    這篇文章主要介紹了PyTorch線性回歸和邏輯回歸實(shí)戰(zhàn)示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • python代碼的幾種常見(jiàn)加密方式分享

    python代碼的幾種常見(jiàn)加密方式分享

    這篇文章主要介紹了python代碼的幾種常見(jiàn)加密方式分享,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下
    2022-07-07
  • 使用python操作lmdb對(duì)數(shù)據(jù)讀取的實(shí)例

    使用python操作lmdb對(duì)數(shù)據(jù)讀取的實(shí)例

    這篇文章主要介紹了使用python操作lmdb對(duì)數(shù)據(jù)讀取的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-12-12
  • python文件編寫(xiě)好后如何實(shí)踐

    python文件編寫(xiě)好后如何實(shí)踐

    在本篇文章里小編給大家分享了關(guān)于python文件編寫(xiě)好后如何實(shí)踐的相關(guān)內(nèi)容,需要的朋友們可以參考下。
    2020-07-07
  • Pytest命令行選項(xiàng)的具體使用

    Pytest命令行選項(xiàng)的具體使用

    pytest是一個(gè)流行的Python測(cè)試框架,它提供了許多命令行選項(xiàng),本文主要介紹了Pytest命令行選項(xiàng)的具體使用,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-11-11
  • pygame游戲之旅 調(diào)用按鈕實(shí)現(xiàn)游戲開(kāi)始功能

    pygame游戲之旅 調(diào)用按鈕實(shí)現(xiàn)游戲開(kāi)始功能

    這篇文章主要為大家詳細(xì)介紹了pygame游戲之旅的第12篇,教大家調(diào)用按鈕實(shí)現(xiàn)游戲開(kāi)始功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • Python中8種運(yùn)算符介紹以及示例

    Python中8種運(yùn)算符介紹以及示例

    在Python編程中運(yùn)算符是用于執(zhí)行各種操作的特殊符號(hào)或關(guān)鍵字,下面這篇文章主要給大家介紹了關(guān)于Python中8種運(yùn)算符介紹以及示例的相關(guān)資料,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2024-02-02

最新評(píng)論

馆陶县| 望城县| 玉溪市| 福安市| 谢通门县| 德阳市| 莲花县| 方城县| 铜梁县| 息烽县| 荣昌县| 江安县| 忻城县| 枣阳市| 东平县| 东山县| 临漳县| 连平县| 福建省| 南汇区| 南投市| 敦煌市| 永顺县| 永嘉县| 东方市| 龙游县| 昭平县| 报价| 六枝特区| 葫芦岛市| 布尔津县| 丰顺县| 海原县| 定远县| 彭阳县| 安远县| 疏附县| 沂南县| 金沙县| 玛沁县| 双城市|