Python Forum
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
import argv
#1
Hi everyone,

I am trying to work through the text book 'Learn Python the hard way' and I am getting stuck on Exercise 13:

from sys import argv

script, first, second, third = argv

program = input("What program do you use? ")

print("The script is called:", script)
print("Your first variable is:", first)
print("Your second variable is:", second, f"{program}")
print("Your third variable is:", third) 
ValueError: not enough values to unpack (expected 4, got 3)

He explains this issue happens when you don't put enough arguments on the command when you run it. However I am not sure what he means because I copied his code exactly. Also he mentions reading WYSS section but I am note sure what that is, any ideas?

I am trying to run this in jupyter notebook
Reply
#2
What the problem just to look into argv with print function?
print(argv)
Reply
#3
(Nov-11-2019, 07:21 AM)Scott Wrote: I am trying to run this in jupyter notebook
That's the problem,argv is a way to get arguments from command line passed to the script.
So i think you use Windows then it would be cmd or cmder as i use.
C:\code
λ python argv_test.py a b c
What program do you use? cmder
The script is called: argv_test.py
Your first variable is: a
Your second variable is: b cmder
Your third variable is: c

argv is the simplest way,but have limitation if writing more than simple stuff.
argparse is in standard library,i like Click if writing more than simple stuff for use from command line.
Reply
#4
You must be passing less than 4 arguments. The error says, 4 variables are expected but only 3 were given by you.
py ex13.py first 2nd 3rd, this is how it should work.
"ex13.py" = 1st variable (script)
"first" = 2nd variable (first)
"2nd" = 3rd variable (second)
"3rd" = 4th variable (third)

AND WYSS sections refers to "What You Should See" section, which is just below the code.
Reply


Possibly Related Threads…
Thread Author Replies Views Last Post
  How do I call sys.argv list inside a function, from the CLI? billykid999 3 752 May-02-2023, 08:40 AM
Last Post: Gribouillis
  sys.argv method nngokturk 3 1,027 Jan-23-2023, 10:41 PM
Last Post: deanhystad
  use of sys.argv deepakkr3110 3 3,003 Nov-29-2019, 05:41 AM
Last Post: buran
  Not all data returned from sys.argv ecdhyne 2 2,723 Sep-05-2019, 08:27 PM
Last Post: buran
  Pyinstaller with Sys.Argv[] - “Failed to Execute Script”? ironfelix717 0 5,257 Aug-07-2019, 02:29 PM
Last Post: ironfelix717
  I see is that sys.argv contains character strings helenharry 2 2,715 Jan-09-2019, 11:34 AM
Last Post: DeaD_EyE
  How argv works? Philia 7 4,758 Dec-26-2018, 12:20 AM
Last Post: metulburr
  sys.argv correct sintax? enricosx 3 3,173 Jul-25-2018, 09:27 AM
Last Post: buran
  I gotta problem with making argv parameters Bozx 3 4,014 Apr-04-2017, 03:44 AM
Last Post: alicarlos13
  argv IndexError hsunteik 2 4,492 Dec-19-2016, 06:19 AM
Last Post: hsunteik

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020