2014-02-12 3 views
0

Некоторые из вас могут знать этот сценарий, он называется hash-identifier. Когда он запускается, пользователю предлагается ввести хэш. Я хочу передать хэш в качестве аргумента командной строки, так что скрипт может быть выполнен так:Аргумент командной строки аргумента

hash-identifier d14a028c2a3a2bc9476102bb288234c415a2b01f828ea62ac5b3e42f 

я узнал, что мне нужно импортировать SYS и Getopt, но я никогда не использовал питон раньше, поэтому любые предложения будут быть полезным.

ответ

0

Хорошо, после того, как я импортировал систему, единственное, что мне нужно сделать, это передать sys.argv на печатную переменную. Пример:

variable = sys.argv 
print variable 
0

Вы можете использовать sys.argv[0], чтобы получить первый аргумент командной строки для сценария. Или модуль argparse, если вы хотите больше параметров.

2

предпочтительным методом является использование argparse:

#!/usr/bin/env python 
import argparse 

if __name__ == "__main__": 
    parser = argparse.ArgumentParser(description="Does something with a hash"); 
    parser.add_argument("hash", metavar="HASH", help="the hash to do things with?"); 

    args = parser.parse_args(); 

    hash = args.hash; 

    # Use the hash... 
    print(hash); 

Но использование argparse может быть немного слишком для ваших потребностей, это может быть проще для вас, чтобы сделать это:

#!/usr/bin/env python 

import sys 

if __name__ == "__main__": 
    if len(sys.argv) != 2: # first is program name, second is argument 
     print("USAGE: %s HASH"%(sys.argv[0],)); 
     sys.exit(); 
    hash = sys.argv[1]; 

    # Use the hash... 
    print(hash); 
Смежные вопросы