Matthew Ngaha wrote:
i need help on 2 topics.
1) can someone please tell me what sys is doing, and why its using weird
indexing?
if __name__ == "__main__":
A_Class(*sys.argv[1:4]).A_Class_Method()
sys is doing nothing -- argv in sys holds the command line arguments
passed into python. The first sys.argv[0] is the python script being
executed, and the rest sys.argv[1:] are arguments passed in to that
script. specifying sys.argv[1:4] means you're picking just the three
items. *sys.argv[1:4] expands those from their list form and are passed
into A_Class's __init__ constructor (assuming old style classes). This
instantiates an instance of that class then invokes the A_Class_Method
of that instance.
is sys able to call methods? if so why does it need indexing if it uses * .
------------------------------------------------------------------------------------------------------
2) also i need help with zipfiles. these 2 functions are related in the
same class.
def __init__(self):
self.zipping_directory = "unzipped-{}".format(filename)
def _full_filename(self, filename):
return os.path.join(self.zipping_directory, filename)
def zip_files(self):
file = zipfile.ZipFile(self.filename, 'w')
for filename in os.listdir(self.zipping_directory):
file.write(self._full_filename(filename), filename)
the main thing i need help with is the last line. the zip file is
writing to a file but why does it use the same argument twice?
the first is passed into the instance's _full_filename method and the
result of that becomes the first argument passed into file.write, and
the second is passed in the file.write as the second argument.
HTH
Emile
the for
loop above that line returns the file from the zipping directory, which
is the 2nd argument on file.write? But the 1st argument is using that
same file because that is the file returned from the def
_full_filename(self, filename): method. so please can someone tell me
why it uses the same file argument twice in its write method?
thanks for your time
------------------------------------------------------------------------
_______________________________________________
Tutor maillist - Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor
_______________________________________________
Tutor maillist - Tutor@python.org
To unsubscribe or change subscription options:
http://mail.python.org/mailman/listinfo/tutor