2014-10-13 2 views
-4

Я читаю Учиться Python Hard Way (3-е изд.) и есть упражнение, которое я пытался, но я просто не могу его получить; аргументы и параметры (Exercise 13).Аргументы командной строки, sys.argv

Я читал другие ответы на сайте по тому же вопросу, но мои сомнения остаются. Может ли кто-нибудь объяснить этот код мне?

from sys import argv 
script, first, second, third = argv 
print "The script is called:", script 
print "Your first variable is:", first 
print "Your third variable is:", third 
print "Your second variable is:", second 
+0

Что именно вы не понимаете? Вы получаете некоторые из строк? Ни один из них? Какие * «другие ответы на сайте» * вы читали; что они прояснили; и что еще неясно? Вы прочитали все объяснения? Вы сделали тренировочные упражнения? Что случилось? И почему вы думаете, что ответ здесь будет лучше, чем сам LPtHW? Пожалуйста, см. Http://meta.stackoverflow.com/q/253894/3001761 – jonrsharpe

+0

Я знаю, что мой вопрос был для широкого, но «сценарий, первый, второй, третий = argv», эта часть специально и некоторая концептуальная ясность в отношении argv, и как его использование должно помочь ... – sunp

+1

Эта конкретная часть специально разъяснена в Ех. 13 (третий абзац после кода, начиная * 'строка 3 "распаковывается" 'argv' * *). Кроме того, запуск кода должен дать понять, что происходит. Когда также объясняется использование 'argv' и' raw_input' (см. Второй «Общий студенческий вопрос»). – jonrsharpe

ответ

0

Как @jonsharpe сказал в своем комментарии, программа, которую вы при условии пробегов следующим образом:

  1. нагрузки ссылка на модуль sys, получить элемент argv и хранить его в глобальных переменных.
  2. Возьмите глобальную переменную argv и распаковать его значения, а затем сохранить каждый из его значений в следующем порядке: сохранить 1-ый в script, 2-й в first, 3-й в second и 4-ый в third. Этот шаг может вызывать ошибки, если недостаточно данных для хранения в переменных.
  3. Печатать строку The script is called:, за которой следует значение script. Если script содержит нестрочное значение, записывается значение str(script).
  4. Распечатайте строку Your first variable is:, за которой следует значение, которое имеет first.
  5. Распечатайте строку Your second variable is:, за которой следует значение second.
  6. Распечатайте строку Your third variable is:, за которой следует значение third.