I have this little program(I know there is a lot of errors):
#!/usr/bin/python import os.path import sys filearg = sys.argv[0] if (filearg == ""): filearg = input("") else: if (os.path.isfile(filearg)): print "File exist" else: print"No file" print filearg print "wasn't found"
If i start it by typing python file.py testfile.txt
the output will be always(even if the file doesn’t exist):
File exist
If you don’t know what iam want from this program, i want to print “File ‘filename’ wasn’t found” if the file isn’t exist and if it’s exist iam wan’t to print “File exist”
Any ideas to solve it? Thanks
Advertisement
Answer
It should be sys.argv[1]
not sys.argv[0]
:
filearg = sys.argv[1]
From the docs:
The list of command line arguments passed to a Python script. argv[0] is the script name (it is operating system dependent whether this is a full pathname or not). If the command was executed using the -c command line option to the interpreter, argv[0] is set to the string ‘-c’. If no script name was passed to the Python interpreter, argv[0] is the empty string.