Thanks everyone. Mark thanks for the correction on the ':'. Since I didn't cut and copy, rather typed it out. Errors crept in. :-)
another question in relation to slicing strings. If you want to get a single character, just using the index position will get it. If I use the following, shouldn't it also work? when I use Python 3.3, it didn't provide anything. a = "test.txt" print a[3] result is: 't print a[3:1] Nothing is printed. print a[3:2] Nothing is printed. print a[3:-1] t.tx is printed. Why doesn't the positive number of characters to be splice return anything while the negative value does? sorry about these basic questions. I do like the splice feature within Python. Also what is the best method of testing for a blank string? end of paragraph line 1 new paragraph of line 1. The above example text is what I want to test for. I am planning to either load the whole file in as a single chunk of memory using fp.read() or store it into an array by using fp.readlines(). The first option I see being useful because you can create a regular expression to test for multiple '\n'. While in an array (list) I would have to test for a blank line which I assume would be "". Any suggestions on this would be welcomed. Sean print a[ On 04/01/2014, at 4:38 PM, Mark Lawrence <breamore...@yahoo.co.uk> wrote: > On 04/01/2014 04:03, Sean Murphy wrote: >> Hello all. >> >> This is a newly question. But I wish to understand why the below code is >> providing different results. >> >> import os, sys >> >> >> if len(sys.argv) > 2: >> filenames = sys.argv[1:] >> else >> print ("no parameters provided\n") >> sys.edit() >> >> for filename in filenames: >> print ("filename is: %s\n" %filename) >> >> The above code will return results like: >> >> filename is test.txt >> >> If I modify the above script slightly as shown below, I get a completely >> different result. >> >> if len(sys.argv) > 2: >> filenames = sys.argv[1] >> else >> print ("no parameters provided\n") >> sys.exit() >> >> for filename in filenames: >> print ("filename is: %s\n" % filename) >> >> The result is the filename is spelled out a character at a time. The bit I >> am missing is something to do with splicing or referencing in Python. >> >> Why am I getting different results? In other languages I would have got the >> whole content of the element when using the index of the array (list). >> >> >> Sean >> filename is: t >> filename >> > > As you've already had answers I'd like to point out that your test for > len(sys.argv) is wrong, else is missing a colon and sys.edit() is very > unlikely to work :) > > -- > My fellow Pythonistas, ask not what our language can do for you, ask what you > can do for our language. > > Mark Lawrence > > -- > https://mail.python.org/mailman/listinfo/python-list -- https://mail.python.org/mailman/listinfo/python-list