On Thu, 04 Feb 2010 16:28:17 -0500, Steve Holden wrote: > Terry Reedy wrote: >> On 2/4/2010 3:55 PM, Alan Biddle wrote: >>> Just finishing my first Python (2.6 on Win XP) program, which is >>> working fine. My "Duh?" question is about how to run it from within >>> IDLE and pass it command line arguments. No problem using sys.argv >>> from a Windows command line, but I have missed how you can do that >>> from within IDLE, which complicates development and debugging. >> >> I presume you mean edit, F5-run, see result in shell window. Set >> sys.argv in test function or __name__=='__main__' In 3.1 idle shell: >> >>>>> import sys >>>>> sys.argv >> [''] >>>>> sys.argv = ['abc','dev'] >>>>> sys.argv >> ['abc', 'dev'] >> >> I did not know it was writable, either, until I tried it. >> > As a solution, however, that sucks, wouldn't you agree?
[scratches head] Do you mean setting sys.argv as a solution sucks? No, I don't, I think it is grand. If sys.argv was unmodifiable, *that* would suck. Or do you mean that trying it as a solution to the problem of answering the OP's question sucks? Well, no, experimentation is good for answering these sorts of questions, and I can't assume that the documentation will cover every imaginable use-case, or that users will find it. In the absence of any documentation stating otherwise, I would have assumed that sys.argv was an ordinary list which you can modify at will, but having been caught out on faulty assumptions before, I would try it and see before commenting publicly. -- Steven -- http://mail.python.org/mailman/listinfo/python-list