Message155073
| Author |
ncoghlan |
| Recipients |
Arfrever, Ben.Darnell, brett.cannon, eric.araujo, flox, georg.brandl, ncoghlan, pitrou, rhettinger |
| Date |
2012年03月07日.11:35:55 |
| SpamBayes Score |
2.2721851e-08 |
| Marked as misclassified |
No |
| Message-id |
<1331120156.91.0.359970014947.issue14208@psf.upfronthosting.co.za> |
| In-reply-to |
| Content |
In framing a question for Raymond regarding his preference for avoiding the __argv__ name, I realised I agreed with him. My reasoning is that, when a Python process starts, sys.stdin is sys.__stdin__, sys.stdout is sys.__stdout__ and sys.stderr is sys.__stderr__. The dunder versions capture the original values as created by the interpreter initialisation, not the raw OS level file descriptors.
The new attribute proposed here is different - it's not an immutable copy of the original value of sys.argv, it's a *different* sequence altogether. The analogy with the standard stream initial value capture created by the use of sys.__argv__ would actually be misleading rather than helpful.
For the same reason, Raymond's specific argv_original suggestion doesn't really work for me. Alas, I can think of several other possible colours for that particular bikeshed (such as argv_os, argv_main, argv_raw, argv_platform, argv_executable) without having any particular good way of choosing between them. |
|