linux命令列如何實現傳遞引數

2021-10-04 16:51:57 字數 1017 閱讀 8770

實現在命令列裡執行python3 my_times.py 80 這個命令,可以使其把函式結果返回

80是80分鐘,應得到 1小時 20分鐘:

**如下:

#!/usr/bin/python3

import sys

min = int(sys.ar**[1])

def my_time(min):

if min > 60:

h = min//60

m = min % 60

elif 0 < min < 60:

h = 0

m = min

else:

print(『error』)

print('h:%s m:%s' % (h, m))
try:

my_time(min)

except exception as e:

print(e)

命令列的引數傳遞到python中,其實只要匯入sys模組,其中sys有個ar**,這是乙個列表,當其索引為0時時當前文件的路徑,這個不去管他,索引為1的sys.ar**[1]就時命令列的第乙個引數,就是80了,如果索引為2的話就以此類推,也就是命令列後的第二個引數了。

結果如下:

python@ubuntu:~/desktop/zxc/sss$ ./my_times.py 80

h:1 m:20

別以為到這裡就完了

因為每次都要切換到檔案所在目錄才能執行,為了更方使用程式,我們可以將my_times.py連線到/usr/bin,或者/usr/local/bin,等等配置了系統環境變數的目錄下

注意:如果軟鏈結檔案和原始檔不在同乙個目錄,原始檔要使用絕對路徑,不能使用相對路徑。

/home/python/desktop/zxc/sss/my_times.py,是my_times.py的絕對路徑

/usr/local/bin/gett,gett是軟鏈結後的重新命名

執行效果就是第乙個圖那樣,簡便,像是源生的linux命令一樣(手動滑稽)。

python argparse 模組命令列引數解析

argparse 是 python 的乙個命令列解析包,可根據需要編寫高可讀性的程式。網上的許多教程較為冗長和散漫,沒有達到精練好掌握的目的,本文針對專案中對 argparse 的用法,用例項對各個引數進行講解,力求達到讓讀者秒懂的目的。先上 import argparse if name main...

python 命令列傳參

1.簡單的寫法 通過匯入模組sys import sys if name main argc len sys.ar arg0 sys.ar 0 2.稍微複雜一點的引數可以使用getopt模組 import sys import getopt if name main opt,args getopt....

方法 命令列傳參

設計方法的原則 方法的本意是功能塊,就是實現某個功能的語句塊的集合。我們設計方法的時候,最好保持方法的原子性,就是乙個方法只完成1個功能,這樣有利於我們後期的擴充套件 例 package 包 public class ww 加法 public static int add int a,int b 方...