2016-07-23 3 views
0

это, наверное, довольно глупый вопрос, но я начинающий программист, и я не могу это получить.print (sys.argv) не принимает аргументов

В основном, я думаю, что им использовать sys.argv неправильно, потому что он просто не принимает аргументы столько, сколько я могу сказать. первый код, который я написал с sys.argv выглядит следующим образом:

import sys 
import pyperclip 

dict = {'email': 'foo', 
     'blog': 'monty', 
     'briefcase': 666, 
     'stack overflow': 'pulp'} 
if len(sys.argv) < 2: 
    print('no arguments') 
    sys.exit() 
account = sys.argv[1] 
if account in dict: 
    pyperclip.copy(dict[account]) 
else: 
    print('no value found under' + account) 

сохранил его под именем pw.py и пытался использовать его с помощью командной строки, введя в

pw.py email 

, но нет то, что я набираю, возвращает «без аргументов». вторая программа я попытался идти просто и просто дать ему простую функцию печати:

import sys 

print(sys.argv) 

это один раз возвращает путь к программе. Что я делаю не так?

Я получаю, что это вопрос noob, и что это ужасный способ сохранить пароли, это для проекта, который я пытаюсь сам изучить python.

+0

В какой среде вы используете программу в? Из 'bash' под Linux или из ... независимо от того, что использует Windows, или что-то еще? – chepner

+0

с использованием окон, извините, я не уточнил. теперь это исправлено. –

ответ

1

Используйте «питона pw.py электронной почты» для первого сценария и второй «pw.py any_args Пайтон

+0

Насколько это отличается от запуска его в качестве исполняемого файла? – SilentMonk

+0

@SilentMonk отличается от того, что, когда вы запускаете его как исполняемый файл, вы предоставляете только один аргумент для первого скрипта. А для второго скрипта - только имя файла. –

+0

Я не знаю, в чем проблема. Но он работает как ожидалось, будет ли он выполняться как исполняемый файл или python

Смежные вопросы