EuroPython 2007 - call for refereed papers
Hi all, He're a reminder to submit a talk at EuroPython! Like each year, we have both the regular conference (see call at http://indico.cern.ch/conferenceCFA.py?confId=13919) and a somewhat separated Refereed Papers section. Here is the call for the latter. The deadline for both is the 18th of May. EuroPython 2007 Vilnius, Lithuania 9-11 July Call for Refereed Papers http://www.europython.org/ EuroPython is the only conference in the Python world that has a properly prestigious peer-reviewed forum for presenting technical and scientific papers. Such papers, with advanced and highly innovative contents, can equally well stem from academic research or industrial research. We think this is an important function for EuroPython, so we are even making some grants available to help people with travel costs. We will be happy to consider papers in subject areas including, but not necessarily limited to, the following: * Python language and implementations * Python modules (in the broadest sense) * Python extensions * Interoperation between Python and other languages / subsystems * Scientific applications of Python * Python in Education * Games * Agile Methodologies and Testing * Social Skills We are looking for Python-related scientific and technical papers of advanced, highly innovative content that present the results of original research (be it of the academic or industrial research kind), with proper attention to state of the art and previous relevant literature/results (whether such relevant previous literature is itself directly related to Python or not). We do not intend to let the specific subject area block a paper's acceptance, as long as the paper satisfies other requirements: innovative, Python-related, reflecting original research, with proper attention to previous literature. Abstracts = Please submit abstracts of no more than 200 words to the refereeing committee. You can send submissions no later than 18 May 2007. We shall inform you whether your paper has been selected and announce the conference schedule on the 25 May 2007. For all details regarding the submission of abstracts, please see the EuroPython website (http://www.europython.org). WARNING: Independently of their topic, all abstracts must be submitted *in the Refereed Papers track* in order to be considered by the refereeing committee! If your abstract is accepted, you must submit your corresponding paper before 29 June 2006. Last-minute changes will be accepted until the start of the conference. You should submit the paper as a PDF file, in A4 format, complete, stand-alone, and readable on any standards-compliant PDF reader (basically, the paper must include all fonts and figures it uses, rather than using external pointers to them; by default, most PDF-preparation programs typically produce such valid stand-alone PDF documents). There are no strict typesetting rules. Refereeing == The refereeing committee, selected by Armin Rigo, will examine all abstracts and papers. The committee may consult external experts as it deems fit. Referees may suggest or require certain changes and editing in submissions, and make acceptance conditional on such changes being performed. We expect all papers to reflect the abstract as approved and reserve the right, at our discretion, to reject a paper, despite having accepted the corresponding abstract, if the paper does not substantially correspond to the approved abstract. Presentation The paper must be presented at EuroPython by one or more of the authors. Presentation time will be between half an hour and an hour, including time for questions and answers, depending on each paper's details, and also on the total number of talks approved for presentation. Proceedings === We will publish the conference's proceedings in purely electronic form. By presenting a paper, authors agree to give the EuroPython conference non-exclusive rights to publish the paper in electronic forms (including, but not limited to, partial and total publication on web sites and/or such media as CDROM and DVD-ROM), and warrant that the papers are not infringing on the rights of any third parties. Authors retain all other intellectual property rights on their submitted abstracts and papers excepting only this non-exclusive license. Subsidised travel = We have funds available to subsidise travel costs for some presenters who would otherwise not be able to attend EuroPython. When submitting your abstract, please indicate if you would need such a subsidy as a precondition of being able to come and present your paper. (Yes, this possibility does exist even if you are coming from
Python-URL! - weekly Python news and links (Apr 23)
QOTW: The users. - Ali, answering a question on what's special about Emacs. Dynamic languages look at WSDL and shrug - another example of the hoops that static typing forces humans to go through. - Gordon Weakliem http://lists.community.tummy.com/pipermail/frpythoneers/2007-April/001342.html The current issue of the rather prestigious *Computing in Science and Engineering* journal is devoted to Python (!): http://csdl2.computer.org/persagen/DLAbsToc.jsp?resourcePath=/dl/mags/cs/toc=comp/mags/cs/2007/03/c3toc.xml Python is just as capable--and more!--as JavaScript, VBScript, ... for controlling COM. Here's a little chatter on expression of Array data: http://groups.google.com/group/comp.lang.python/browse_thread/thread/af1a19a4e3541060/ Despite Python-URL!'s habitual ... reserve about regular expressions, there *are* places they fit perfectly. Steven Bethard and Peter Otten show off how good a simple RE can be: http://groups.google.com/group/comp.lang.python/browse_thread/thread/870b46f0e4bc02c6/ Python 2.5.1 is the first bugfix release of Python 2.5: http://groups.google.com/group/comp.lang.python/msg/2e58fab5387e1b77 Michael Hoffman correctly explains the so-often-misunderstood semantics of '*' (for example) in subprocess invocations. Notice use of the little-known expanduser(), expandvars(), and check_call(): http://groups.google.com/group/comp.lang.python/msg/639cc8af04a91595 Carsten Haese supplies a model for construction in Python of a VB/Delphi iterator: http://groups.google.com/group/comp.lang.python/msg/557e1358aa92c5d3 Everything Python-related you want is probably one or two clicks away in these pages: Python.org's Python Language Website is the traditional center of Pythonia http://www.python.org Notice especially the master FAQ http://www.python.org/doc/FAQ.html PythonWare complements the digest you're reading with the marvelous daily python url http://www.pythonware.com/daily Mygale is a news-gathering webcrawler that specializes in (new) World-Wide Web articles related to Python. http://www.awaretek.com/nowak/mygale.html While cosmetically similar, Mygale and the Daily Python-URL are utterly different in their technologies and generally in their results. For far, FAR more Python reading than any one mind should absorb, much of it quite interesting, Planet Python indexes much of the universe of Pybloggers. http://www.planetpython.org/ The Python Papers aims to publish the efforts of Python enthusiats. http://pythonpapers.org/ Readers have recommended the Planet sites: http://planetpython.org http://planet.python.org comp.lang.python.announce announces new Python software. Be sure to scan this newsgroup weekly. http://groups.google.com/groups?oi=djqas_ugroup=comp.lang.python.announce Python411 indexes podcasts ... to help people learn Python ... Updates appear more-than-weekly: http://www.awaretek.com/python/index.html Steve Bethard continues the marvelous tradition early borne by Andrew Kuchling, Michael Hudson, Brett Cannon, Tony Meyer, and Tim Lesher of intelligently summarizing action on the python-dev mailing list once every other week. http://www.python.org/dev/summary/ The Python Package Index catalogues packages. http://www.python.org/pypi/ The somewhat older Vaults of Parnassus ambitiously collects references to all sorts of Python resources. http://www.vex.net/~x/parnassus/ Much of Python's real work takes place on Special-Interest Group mailing lists http://www.python.org/sigs/ Python Success Stories--from air-traffic control to on-line match-making--can inspire you or decision-makers to whom you're subject with a vision of what the language makes practical. http://www.pythonology.com/success The Python Software Foundation (PSF) has replaced the Python Consortium as an independent nexus of activity. It has official responsibility for Python's development and maintenance. http://www.python.org/psf/ Among the ways you can support PSF is with a donation. http://www.python.org/psf/donate.html Kurt B. Kaiser publishes a weekly report on faults and patches. http://www.google.com/groups?as_usubject=weekly%20python%20patch Although unmaintained since 2002, the Cetus collection of Python hyperlinks retains a few gems. http://www.cetus-links.org/oo_python.html Python FAQTS http://python.faqts.com/ The Cookbook is a collaborative effort to capture useful and interesting recipes.
MS SQL Server Extension?
Hi all, in my next project, my Python code needs to talk to an MS SQL 2000 Server. Internet search gives me http://pymssql.sourceforge.net/ I wonder what module(s) people are using. My code runs on a Linux box so the module has to build on Linux. Any hints/pointers are welcome. -- http://mail.python.org/mailman/listinfo/python-list
Advocacy: Python up, Ruby down.
I found this blog post on one users migration to Python. It states one users frustrations but the comments section is quite good too. http://blog.cbcg.net/articles/2007/04/22/python-up-ruby-down-if-that-runtime-dont-work-then-its-bound-to-drizzown The time and effort the developers spend on the balance between fixing what we have over adding new features is hard, but it did pay off for this programmer who was lured over by a more robust implementation and good documentation. - Paddy. -- http://mail.python.org/mailman/listinfo/python-list
How to set font colour in PIL
I use PIL to write some text to a picture.The text must be seen wery clearly. I write the text to different pictures but to the same position. As pictures maybe different, colour, in the position where I write the text, is also different. Is there a way how to set the font colour so that it will be seen very clearly in the picture? For example, if the picture is bright ( for example yellow), the font colour should be dark( e.g. black) and vice versa. Can anyone help? Thanks L. -- http://mail.python.org/mailman/listinfo/python-list
Re: [python-advocacy] Would You Write Python Articles or Screencasts for Money?
Firstly, let me put up my hand and say that I would be happy to write Python articles for cash. Now, on to business. I am already doing something similar with /The Python Papers/. As part of putting together each edition (especially the upcoming, bumper edition due out soon), I seek out authors, solicit contributions, review available literature and generally promote good content. I don't think it's too much to suggest that anyone seeking to assist in creating a good image for Python could very usefully contribute to this effort. In the last edition we offered a prize for the best article, and also undertook some review of published papers and articles, reprinting 'best of' papers from the recent OSDC conference. We are also seeking recommendations from other conference organisers so that we can, on an ongoing basis, select and republish 'the best' and present them in one globally accessible place. The Python Papers has a growing profile, but it is still very early days. We need help at the editorial level very much, and also in building a new website. Additionally, I can see the value in getting more column inches in journals and magazines with already large readerships. As editor, I already have a relationship with many authors of Python material. If I knew of opportunities for publishing in other journals, I would be more than happy to try to organise a contribution. I have been waiting until after the publication of our next edition to propose anything of the kind, but in light of this discussion perhaps I should bring it up now -- perhaps there is the possibility of The Python Papers becoming more officially related to python.org. This might give the PSF a tool by which they can officially recognise members of the Python community. Unfortunately, we are limited at the moment by a lack of manpower. Each edition is the result of a lot of effort on my part, and also by contributors and other members of the editorial board. Being able to have more committed individuals involved in its production would, I feel, rapidly improve the reach and quality of the publication. I'm not looking for a handout, as I'm happy with what I'm doing already, but I thought I'd point out that The Python Papers could be an instrument for achieving many of the goals outlined in this discussion. All the best, -Tennessee On 4/25/07, Facundo Batista [EMAIL PROTECTED] wrote: 2007/4/24, Steve Holden [EMAIL PROTECTED]: and I was more looking for a way to reward authors of excellence, as judged by some subset of the Python community - this might have to be the PSF membership given the impracticality of running a meaningful poll with a larger set of voters. Why? Because of spammers and/or false voters? When I first read about this, I thought about a web page where anybody could propose articles for voting, and anybody could vote them. Monthly, an award goes for the top 1, and that article goes out from the poll. Why can't that be done? Other point: what happens with all the non-english articles? Other categories? There are many other possibilities too. What about an award for most helpful responses on c.l.py over some period? I think one of the How do you evaluate such thing? I think this is too complicated... Regards, -- .Facundo Blog: http://www.taniquetil.com.ar/plog/ PyAr: http://www.python.org/ar/ ___ Advocacy mailing list [EMAIL PROTECTED] http://mail.python.org/mailman/listinfo/advocacy -- http://mail.python.org/mailman/listinfo/python-list
Re: how to serialize a COM object ?
Carsten Haese [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] On Tue, 2007-04-24 at 13:10 -0700, vml wrote: I have a problem : I have a COM object. I would like to pass this com object from a server to a client through a socket. That is just as feasible as passing a cruise ship through a phone line. A COM object represents a connection to a service or executable that is running on one computer. Transferring that connection to another computer is impossible. -Carsten Actually, CoMarshalInterface allows you to do exactly this. Roger == Posted via Newsfeeds.Com - Unlimited-Unrestricted-Secure Usenet News== http://www.newsfeeds.com The #1 Newsgroup Service in the World! 120,000+ Newsgroups = East and West-Coast Server Farms - Total Privacy via Encryption = -- http://mail.python.org/mailman/listinfo/python-list
Re: function object.func_default off the console
Aaron Brady wrote: f.func_defaults[0] [2, 3] f.func_defaults[0]+=[4] Traceback (most recent call last): File stdin, line 1, in module TypeError: 'tuple' object does not support item assignment f.func_defaults[0] [2, 3, 4] V. interesting. Operation succeeds but with a throw. Er, raise. This is not specific to func_defaults: t = ([1],) t[0] += [2] Traceback (most recent call last): File stdin, line 1, in module TypeError: 'tuple' object does not support item assignment t ([1, 2],) t[0] += [2] is resolved to t.__setitem__(t[0].__iadd__([2])) where list.__iadd__() succeeds but __setitem__() fails (because tuples don't have that method). Peter -- http://mail.python.org/mailman/listinfo/python-list
trinary operator - if then else
What is Python's version for the trinary if..then..else operator? I want a one-liner such as a?b:c for the if..then..else control structure if a then b else c Does Python 2.4 support it? -- http://mail.python.org/mailman/listinfo/python-list
Re: Catching a specific IO error
Gabriel Genellina wrote: You can get the 2 as the errno exception attribute. BTW, 2 == errno.ENOENT try: export = open(self.exportFileName , 'w') except IOError, e: if e.errno==errno.ENOENT: # handle the No such file or directory error # calling an error handling method. See http://docs.python.org/lib/module-exceptions.html --Gabriel Genellina Perfect! Just what I was looking for. Thank you! :) Tina -- http://mail.python.org/mailman/listinfo/python-list
Re: trinary operator - if then else
Alchemist wrote: What is Python's version for the trinary if..then..else operator? true_value if condition else false_value Does Python 2.4 support it? No, it requires 2.5 or later. Peter -- http://mail.python.org/mailman/listinfo/python-list
RE: If Dict Contains a particular key
Thanks guys for this, glad it was so simple. I used mikes solution in the end, and it worked a charm. Thanks again, Rob From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Michael Bentley Sent: 24 April 2007 18:37 To: python-list@python.org Subject: Re: If Dict Contains a particular key On Apr 24, 2007, at 12:28 PM, Robert Rawlins - Think Blue wrote: Hello Guys, I'm Looking to build a quick if/else statement that checks a dictionary for a key like follows. If myDict contains ThisKey: Do this... Else Do that... Thats the best way of doing this? if ThisKey in myDict: pass # do this else: pass # do that -- http://mail.python.org/mailman/listinfo/python-list
Re: Tutorial creates confusion about slices
On 2007-04-24, Michael Hoffman [EMAIL PROTECTED] wrote: Really only one person has argued that the docs do not need to be changed. The other two people seemed to think you were asking for help rather than discussing how to revise the docs. Understandable, since that's why most people come to this group in my estimation. Your time is your own and it is good to spend your efforts on what you think will be most fruitful. But if you are going to let the opposition of one person stop you from doing anything, you will not accomplish very much. [EMAIL PROTECTED] has brought a point that is worth considering. So I retreat now a bit to see if I can come with a proposal that bears in mind his point. -- Antoon Pardon -- http://mail.python.org/mailman/listinfo/python-list
Re: Python un-plugging the Interpreter
Jorgen Grahn [EMAIL PROTECTED] wrote: On Thu, 19 Apr 2007 20:39:57 -0700, Alex Martelli [EMAIL PROTECTED] wrote: Steve Holden [EMAIL PROTECTED] wrote: A long time ago Greg Stein produced a patch that removed the need for the GIL, but nobody seemed to want to pay the penalty it extracted in speed reduction, so it languished unadopted. Perhaps the current wave of dual-core and quad-core CPUs in cheap consumer products would change people's perceptions -- I wonder... Maybe it would change /perceptions/, but would normal users suddenly start running things that are (a) performance-critical, (b) written in Python and (c) use algorithms that are possible to parallellize? I doubt it. (But I admit that I am a bit negative towards thread programming in general, and I have whined about this before.) I find this last statement interesting, because it differs so much from my own attitude - getting a thread running was one of the first things I did when I started getting to grips with python. Do you mind whining some more - maybe I can learn something - threads seem to me to make a lot of things so much easier and more natural, as I see them as sequences that run at the same time, and I find this immensely useful for all sorts of things, as it enables me to think in a simple linear fashion about parts of complicated things. And if you add queues, you have something in your hand that you can do quite fancy stuff with in a robust, simple manner... *grin* before I discovered the queue module, I was using named pipes to communicate between threads... So you could say I am a threading freak if you want to, and I won't argue. But I would like to hear the opposite viewpoint.. - Hendrik -- http://mail.python.org/mailman/listinfo/python-list
Re: Tutorial creates confusion about slices
On 2007-04-24, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: Antoon Pardon wrote: On 2007-04-24, Michael Bentley [EMAIL PROTECTED] wrote: On Apr 24, 2007, at 6:35 AM, Antoon Pardon wrote: People don't read tutorials in a strictly linear fashion. They can continue to later subjects and then come back here to see how things tie together. So the fact that it is only confusing to those who know more than is already presented doesn't seem a very good reason to leave it in. Yet they understand that earlier in the document, there is likely to be a less complete coverage of a given topic. There is in fact, a link on that page that includes a more complete coverage of that topic (which I mentioned to you in an earlier message IIRC). That there is more complete coverage elsewhere is no good reason to come with an explanation that suggests things working in a way that will be contradicted by that more complete coverage. I happen to agree with you, but that's not a completely non- controversial position. Many tutorials/manuals will prevent a simplified (and incorrect for the general case) description of how something works early on, and then clarify it later for the general case. Personally I'd usually rather have the complete description earlier rather than an incorrect simplification, or at least have a footnote to the effect of this is a simple introduction, the full behavior will be described later. But there's a good argument to be made for omitting confounding details early on in a tutorial if there's a pedogogical reason for doing so--indeed, there's such a widespread belief that early oversimplification is actually helpful that I'd guess the majority of language tutorials engage in it to some degree. Thank you for bringing this up so explicitly. I must confess this point hadn't entered my mind but it is worth thinking about. I'll see if I can come up with a new proposal bearing this in mind. Thank you. -- Antoon Pardon -- http://mail.python.org/mailman/listinfo/python-list
Re: Would You Write Python Articles or Screencasts for Money?
Steve Holden [EMAIL PROTECTED] wrote: Jeff Rush wrote: There is discussion by the Python Software Foundation of offering cash bounties or perhaps periodic awards to the best of for magazine articles, video/screencast clips and such. If YOU would be swayed to get involved in producing content in exchange for cash, please speak up on the advocacy mailing list and also drop an email to Steve Holden [EMAIL PROTECTED], current champion of this idea and looking for encouragement. Ideas on how to evaluate contributions, how frequently to do this and critical thresholds of cash amounts necessary to induce YOUR participation are wanted. Thanks for posting this, Jeff. I have already had a couple of replies. Allow me to expand on my current thinking before this gets off-track. Lest people be lulled into thinking that the PSF is going into the articles for cash business, let me say that isn't really the idea. I don't really think we will necessarily improve the quality of information about Python simply by throwing cash incentives at authors, and I was more looking for a way to reward authors of excellence, as judged by some subset of the Python community - this might have to be the PSF membership given the impracticality of running a meaningful poll with a larger set of voters. I get a bit confused here - when you say articles - what forum do you have in mind? I would suggest that paying for articles would make sense on a commisioned basis, if there were to be an identified hole in the documentation, or for some technique or recipe which is not well covered, and deserving of more exposure. So the intention is not so much to encourage people who wouldn't otherwise write to start writing (desirable though this outcome might be, I don't think cash incentives are the right way to achieve it) but rather to reward *excellence* in Python writing and underline the fact that standards are important. There are many other possibilities too. What about an award for most helpful responses on c.l.py over some period? I think one of the reasons people find Python so useful is its helpful community, and it would be nice to see the tireless fielders of questions rewarded for their community contribution. This is a good idea - I sometimes marvel at the degree of effort that some of the answers to a question on this NG must cost the repliers. Another one would be to reward the most patient fellow... However, these are only my ideas and I am open to any and all suggestions from the broader Python community about how awards might be used to provide incentives to improve the available information about Python, and possibly even the software that's available in Python. I have undertaken to make a proposal to the PSF Board for an incentive scheme. So please let me have your ideas. Most bugs fixed in the month for the developers? (Watch them scrabbling for the easy ones - G ) Most Patches reviewed and incorporated? Best recipe of the week/month/year? Best Existing Module - don't forget that there has been a lot of effort put in already into stuff like Twisted, Pyro, SPE, and many more - a lot of it excellent work provided by rugged individuals, just because they could... As somone else has already said : .. is F**G awesome - and its all in python. Hey! how about starting with the best suggestion for spending the money... That should get the ball rolling. - Hendrik -- http://mail.python.org/mailman/listinfo/python-list
If Dict Contains...
Hello Guys, Looking to build a quick if/else statement that checks a dictionary for a key like follows. If myDict contains ThisKey: Do this... Else Do that... Thats the best way of doing this? Thanks, Rob -- http://mail.python.org/mailman/listinfo/python-list
Charlotte Python Group
Attending my first meetup tomorrow for the Agile Charlotte group from meetup.com. My old area, surrounded by cows and corn, had no chance of getting any meetups, so I'm excited to be back at the city and able to partake in some community. If anyone by chance is attending, or near enough to make it, check out the information and drop a note. -- Read my blog! I depend on your acceptance of my opinion! I am interesting! http://ironfroggy-code.blogspot.com/ -- http://mail.python.org/mailman/listinfo/python-list
Re: *** Watch BOMBSHELL video of Senator John Kerry admitting 911 was in INSIDE JOB ???
Jon Slaughter wrote: [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] http://www.911blogger.com/node/8053 Senator John Kerry was questioned concerning 9/11 during an appearance at Book People in Austin, Texas. Members of Austin 9/11 Truth Now asked Kerry about the officially unexplained collapse of WTC Building 7. Kerry responded: I do know that that wall, I remember, was in danger and I think they made the decision based on the danger that it had in destroying other things-- that they did it in a controlled fashion. http://www.jonesreport.com/articles/220407_kerry_wtc7.html Thanks to the dozen or so people who submitted this as a blog entry :) Mr. Kerry?!? Just a follow-up or two... WHAT THE HELL|?| Are you saying that building was wired that day? Or well in advance? 'Splain, please. Does your fellow Bonesman George Walker Bush appreciate you letting the cat out of the bag on this? Is that your cell phone I hear ringing? Why is your wife squirming like that? Stop it, Theresa! Stop it! So what your saying is that the democrates are behind 9/11? So they tried to frame Bush? Whats new? Doesn't this then mean that the democrates and alqaeda are working together? I always that pelosie looked like she had a little arabic in her(probably in more ways than one). Naw, the Repuglicans were fully in power then, it had to be them. -- JosephKK Gegen dummheit kampfen die Gotter Selbst, vergebens. --Schiller -- http://mail.python.org/mailman/listinfo/python-list
Re: MS SQL Server Extension?
Jack wrote: Hi all, in my next project, my Python code needs to talk to an MS SQL 2000 Server. Internet search gives me http://pymssql.sourceforge.net/ I wonder what module(s) people are using. My code runs on a Linux box so the module has to build on Linux. Any hints/pointers are welcome. There are several modules around which will cover this. One of these days I'll take the post I'm about to write and stick it on a Wiki or something because I seem to write it about once every six months :) In no particular order: adodbapi - recently resurrected from moribundity (if that's a word); search the list archives because I can't remember who's working on it. + Win32 only (afaik) + Covers all sorts of things as well as MSSQL + Allows for passthrough authentication - Used to have some slight flakiness in it. Bloke who's taken over maintenance says he's patched and simplified things. Haven't tried it since. pymssql - http://pymssql.sf.net + Win32 Linux (via FreeTDS) - Doesn't allow passthrough authentication - Has some issues with Unicode pyodbc - http://pyodbc.sf.net (a recent runner) + Win32 Linux (via whatever *nix ODBC package) + Apparently more actively maintained than pymssql + (Is currently the favoured front-runner among the sqlalchemy devs) - Lacks .nextset (in case that's important to you) Other contenders: mxODBC - Commercial License but a very strong and long-standing candidate. Lacks .nextset support. Works on *nix via iODBC etc. Object Craft MSSQL - Worked well for me for years but they seemed to have abandoned it of late. Still there. Still works. But no binaries beyond Python 2.3. (I did try to recompile using MingW but couldn't get it to work). Works on *nix via FreeTDS. TJG -- http://mail.python.org/mailman/listinfo/python-list
Re: Tutorial creates confusion about slices
Hi Antoon, The best way to remember how slices work is to think of the indices as ... +---+---+---+---+---+ | H | e | l | p | A | +---+---+---+---+---+ 0 1 2 3 4 5 -5 -4 -3 -2 -1 This is all very well with a simple slice like: HelpA[2:4]= lp But that is the whole point of a language tutorial, to introduce the language and provide a way to get started. Note that the tutorial doesn't even go into any details on extended slicing - as far as the beginner is concerned at this point, there *is* no extended slice notation. Even if the tutorial *did* go into more detail about slicing, mentioning negative steps would be folly - the tutorial should be an easy way into the language, and in such a context the above tool for remembering how they work is just fine. The exact (mathematical) definition for string slices is given in the Library reference (http://docs.python.org/lib/typesseq.html), which is where it should be. If you are at the point where understanding what the deal is with extended slice notation for strings, then you are ready to look at the real manual. If the tutorial was fully comprehensive it would be massive and daunting. You'd probably have to split it up as well, into, say, a Language reference and a Library reference. -- http://mail.python.org/mailman/listinfo/python-list
popen2 results
Hello guys, I've recently ported my application from bash to python, however there are still a few bash line utilities I -have- to use in the application as there isn't any alternative available to me. In the old days of bash I would have grep'd the output from these commands to determine the outcome. I'm now using popen2 to run the command which works a charm, but I'm struggling to parse the results of the function, has anyone had any experience with this? I've found a few suggested solutions dotted around, such as this one. import os def filtered(command, source): dest, result = os.popen2(command) dest.write(source) dest.close() try: return result.read() finally: result.close() But to be honest I'm struggling to get it to do anything as it doesn't states what the 'source' object is or should be. Thanks for any help guys, I'm just looking to capture the output from the command and then I can go about a little REGEX on it. Thanks, Rob -- http://mail.python.org/mailman/listinfo/python-list
Re: Tutorial creates confusion about slices
Antoon Pardon wrote: On 2007-04-24, Michael Hoffman [EMAIL PROTECTED] wrote: Really only one person has argued that the docs do not need to be changed. The other two people seemed to think you were asking for help rather than discussing how to revise the docs. Understandable, since that's why most people come to this group in my estimation. Your time is your own and it is good to spend your efforts on what you think will be most fruitful. But if you are going to let the opposition of one person stop you from doing anything, you will not accomplish very much. [EMAIL PROTECTED] has brought a point that is worth considering. So I retreat now a bit to see if I can come with a proposal that bears in mind his point. Now that this thread has slowed a little I would also point out -- while agreeing with sjdevnull's thoughtful post -- that reaction to an idea on a mailing list is possibly not the best means of gauging its validity. That's not to say you shouldn't listen to other posters; rather that, if you still feel after due consideration of other people's points of view that what you're proposing is right, then go ahead and create a patch. The people who are going to accept or reject your doc patch are (probably) not the people who are putting forward their ideas here on this list. Ultimately, patches aren't voted in by the denizens of python-list / c.l.py. Also, there may be 1000 people nodding thoughtfully (and silently) in agreement with your point of view, but who are unlikely to post a me, too comment. It seems likely that any posters are more likely to be those in disagreement with a point of view. Frankly, if you think after consideration that a change to the docs is advisable, post up a patch to the relevant place. If there are people on this list who disagree, they're at liberty to comment on the patch. But at that point, you've made the effort and said your piece. It's up to the naysayers to make the effort to comment on the patch. And, ultimately, up to the Python development community to accept or reject it as they see fit. (And as they have the time and inclination :) TJG -- http://mail.python.org/mailman/listinfo/python-list
Coding conventions for class names
set, int, float, list, object,... Don't see any of the basic types following the capitalized word convention for classes covered by PEP 08. This does not hold only for __builtins__ in the strict sense but also for types defined in builtin modules like datetime. My question is: does anyone actually follow guidelines here and if yes which ones and are they resonable ( e.g. stable with regard to refactoring etc. )? -- http://mail.python.org/mailman/listinfo/python-list
Re: If Dict Contains...
Looking to build a quick if/else statement that checks a dictionary for a key like follows. If myDict contains ThisKey: Do this... Else Do that... Thats the best way of doing this? if key in myDict: Do this. else: Do that HTH, Daniel -- http://mail.python.org/mailman/listinfo/python-list
How to change font colour
I use PIL to write some text to a picture.The text must be seen wery clearly. I write the text to different pictures but to the same position. As pictures maybe different, colour, in the position where I write the text, is also different. Is there a way how to set the font colour so that it will be seen very clearly in the picture? For example, if the picture is bright ( for example yellow), the font colour should be dark( e.g. black) and vice versa. Can anyone help? Thanks L. -- http://mail.python.org/mailman/listinfo/python-list
Re: Tutorial creates confusion about slices
On Apr 23, 1:38 pm, Antoon Pardon [EMAIL PROTECTED] wrote: The following is part of the explanation on slices in the tutorial: The best way to remember how slices work is to think of the indices as ... +---+---+---+---+---+ | H | e | l | p | A | +---+---+---+---+---+ 0 1 2 3 4 5 -5 -4 -3 -2 -1 For a tutorial this is sound advice. A tutorial is designed to give readers an easy intro to a topic, which is what this achieves. At this stage the target audience has no idea that extended slices even exist, let alone that you can use negative indices with them. This is all very well with a simple slice like: HelpA[2:4]= lp But it give the wrong idea when using the following extended slice: HelpA[4:2:-1] = Ap But that is fine. Extended slice notation (let alone using negative indices) is beyond the scope of the tutorial. Once you start to experiment with extended slices, it is time to look beyond the simplified tutorial information, and to the official documentation in the Library and Language references. The library docs (http:// docs.python.org/lib/typesseq.html) say this: (5) The slice of s from i to j with step k is defined as the sequence of items with index x = i + n*k such that 0 = n (j-i/k) Which is exactly how it works, and describes exactly why your extended slice example works as it does. -- http://mail.python.org/mailman/listinfo/python-list
Re: Coding conventions for class names
In [EMAIL PROTECTED], Kay Schluehr wrote: set, int, float, list, object,... Don't see any of the basic types following the capitalized word convention for classes covered by PEP 08. This does not hold only for __builtins__ in the strict sense but also for types defined in builtin modules like datetime. Most built-ins are easy to explain: They were functions long before it was possible to use them as base classes and stayed lowercase for backwards compatibility. Don't know about `set` and `object`. I guess it's foolish consistency!? My question is: does anyone actually follow guidelines here and if yes which ones and are they resonable ( e.g. stable with regard to refactoring etc. )? I follow PEP 8 in my (mostly unpublished) code if that does matter to you. :-) Ciao, Marc 'BlackJack' Rintsch -- http://mail.python.org/mailman/listinfo/python-list
Re: Would You Write Python Articles or Screencasts for Money?
On 2007-04-24, Anton Vredegoor [EMAIL PROTECTED] wrote: Steve Holden wrote: When cash is involved, it's important to avoid even the slightest hint of a suggestion of a suspicion of a conflict of interest; that, I guess, is why firms that run contests with cash prizes always declare employees and their families not eligible, and why I think the PSF should do likewise in this case. That's a good point, and also a valid reason for restricting the voting community to PSF members. Thanks, Alex. So in order to avoid a suspicion of a conflict of interest you want to turn the whole thing into private property of the PSF? That is the most ridiculous suggestion I have ever I kind of understand why they would want to do this. If you have no limitations on who may vote, such a contest can easily turn into a contest of who can mobilize the biggest clan of supporters. Now maybe there are better ways to avoid this kind of unwanted effect but I wouldn't call Steve's suggestion ridiculous. -- Antoon Pardon -- http://mail.python.org/mailman/listinfo/python-list
Re: Coding conventions for class names
Kay Schluehr wrote: My question is: does anyone actually follow guidelines here Yes. and if yes which ones and are they resonable ( e.g. stable with regard to refactoring etc. )? All of them that I know of. What does it mean to be stable with regard to refactoring etc.? -- Michael Hoffman -- http://mail.python.org/mailman/listinfo/python-list
Re: q: how to output a unicode string?
Diez B. Roggisch wrote: Frank Stajano wrote: A simple unicode question. How do I print? Sample code: # -*- coding: utf-8 -*- s1 = uhéllô wórld print s1 # Gives UnicodeEncodeError: 'ascii' codec can't encode character # u'\xe9' in position 1: ordinal not in range(128) What I actually want to do is slightly more elaborate: read from a text file which is in utf-8, do some manipulations of the text and print the result on stdout. I understand I must open the file with f = codecs.open(input.txt, r, utf-8) but then I get stuck as above. I tried s2 = s1.encode(utf-8) print s2 but got héllô wórld Which is perfectly alright - it's just that your terminal isn't prepared to decode UTF-8, but some other encoding, like latin1. Aha! Thanks for spotting this. You are right about the terminal (rxvt/cygwin) not being ready to handle utf-8, as I can now confirm with a cat t2.py (t2.py being the program above) which displays the source code garbled in the same way. If I do s1 = uhéllô wórld print s1 at the interactive prompt of Idle, I get the proper output héllô wórld So why is it that in the first case I got UnicodeEncodeError: 'ascii' codec can't encode? Seems as if, within Idle, a utf-8 codec is being selected automagically... why should that be so there and not in the first case? Then, in the hope of being able to write the string to a file if not to stdout, I also tried import codecs f = codecs.open(out.txt, w, utf-8) f.write(s2) but got UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 1: ordinal not in range(128) Instead of writing s2 (which is a byte-string!!!), write s1. It will work. OK, many thanks, I got this to work! The error you get stems from f.write wanting a unicode-object, but s2 is a bytestring (you explicitly converted it before), so python tries to encode the bytestring with the default encoding - ascii - to a unicode string. This of course fails. I think I have a better understanding of it now. If the terminal hadn't fooled me, I probably wouldn't have assumed that the code I originally wrote (following the first examples I found) was wrong! I assume that when you say bytestring you mean a string of bytes in a certain encoding (here utf-8) that can be used as an external representation for the unicode string which is instead a sequence of code points. Thanks again -- http://mail.python.org/mailman/listinfo/python-list
Re: q: how to output a unicode string?
So why is it that in the first case I got UnicodeEncodeError: 'ascii' codec can't encode? Seems as if, within Idle, a utf-8 codec is being selected automagically... why should that be so there and not in the first case? I'm a bit confused on what you did when the error appears if you try to output a unicode-object without prior encoding - then the default encoding (ascii) is used. Then, in the hope of being able to write the string to a file if not to stdout, I also tried import codecs f = codecs.open(out.txt, w, utf-8) f.write(s2) but got UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 1: ordinal not in range(128) Instead of writing s2 (which is a byte-string!!!), write s1. It will work. OK, many thanks, I got this to work! The error you get stems from f.write wanting a unicode-object, but s2 is a bytestring (you explicitly converted it before), so python tries to encode the bytestring with the default encoding - ascii - to a unicode string. This of course fails. I think I have a better understanding of it now. If the terminal hadn't fooled me, I probably wouldn't have assumed that the code I originally wrote (following the first examples I found) was wrong! I assume that when you say bytestring you mean a string of bytes in a certain encoding (here utf-8) that can be used as an external representation for the unicode string which is instead a sequence of code points. Yes. That is exactly the difference. Diez -- http://mail.python.org/mailman/listinfo/python-list
Re: Tutorial creates confusion about slices
On 2007-04-25, Ant [EMAIL PROTECTED] wrote: On Apr 23, 1:38 pm, Antoon Pardon [EMAIL PROTECTED] wrote: The following is part of the explanation on slices in the tutorial: The best way to remember how slices work is to think of the indices as ... +---+---+---+---+---+ | H | e | l | p | A | +---+---+---+---+---+ 0 1 2 3 4 5 -5 -4 -3 -2 -1 For a tutorial this is sound advice. A tutorial is designed to give readers an easy intro to a topic, which is what this achieves. At this stage the target audience has no idea that extended slices even exist, let alone that you can use negative indices with them. OK. But eventually they will come into contact with negative indexes. If they still rely on the above representation for understanding slices that may cause confusions. It is possible that the time lost in clearing up these later confusions will be bigger than the time gained by using this simplification in the tutorial. So I'm not so sure it is sound advice in this case. If the consensus is that something like this should remain, I would suggest replacing: The best way to remember how slices work is with: A way to remember how slices work, it is not entirly correct but may be usefull, is Or something similar. Wording to that effect makes it more clear that it is a crutch that can be usefull now but that it should be discarded later. -- Antoon Pardon -- http://mail.python.org/mailman/listinfo/python-list
Now()
Hello Guys, I'm using the following function 'str (now)' to place a date time stamp into a log file, which works fine, however it writes the stamp like this. 2007-04-25 11:06:53.873029 But I need to expel those extra decimal places as they're causing problems with the application that parses the log data, all I need is something like this: 2007-04-25 11:06:53 With time depicted to the nearest second, from my background in ColdFusion development we used to have a datetimeformat() function that I could use as DateTimeFormat(now(), -mm-dd HH:mm:ss) Which would give the current time a mask. Any equivalent for this in python? Thanks, Rob -- http://mail.python.org/mailman/listinfo/python-list
Re: trinary operator - if then else
On Apr 25, 2007, at 1:58 AM, Alchemist wrote: What is Python's version for the trinary if..then..else operator? I want a one-liner such as a?b:c for the if..then..else control structure if a then b else c Does Python 2.4 support it? Not precisely, but you can *usually* get away with: a and b or c -- http://mail.python.org/mailman/listinfo/python-list
Re: Would You Write Python Articles or Screencasts for Money?
Antoon Pardon wrote: That's a good point, and also a valid reason for restricting the voting community to PSF members. Thanks, Alex. So in order to avoid a suspicion of a conflict of interest you want to turn the whole thing into private property of the PSF? That is the most ridiculous suggestion I have ever I kind of understand why they would want to do this. If you have no limitations on who may vote, such a contest can easily turn into a contest of who can mobilize the biggest clan of supporters. Sure, any democratic process can be derailed by a coordinated effort of people with a different mentality. To prevent such things by killing the democratic process oneself right at the beginning of a project is a peculiar way of avoiding this risk. Now maybe there are better ways to avoid this kind of unwanted effect but I wouldn't call Steve's suggestion ridiculous. It's about as ridiculous as proving that a stiff parrot is dead by grabbing it by the legs and repeatedly hitting it's head on the counter. A. -- http://mail.python.org/mailman/listinfo/python-list
Re: Would You Write Python Articles or Screencasts for Money?
Anton Vredegoor wrote: It's about as ridiculous as proving that a stiff parrot is dead by grabbing it by the legs and repeatedly hitting it's head on the counter. Or to write it's where its is more appropriate. A. -- http://mail.python.org/mailman/listinfo/python-list
PIL font formatting...
Hi! I wrote a web visitor counter with modpy and pil. It is must working on half-static page, so I must write this counter with jpeg image output. Everything is working good, but I need to change this counter a little, it's style isn't same as it's webpage's style. I want to make bold and italic text into image. How to I do it? font = ImageFont.truetype('arial.ttf', 15, ) .text('a', font = font, ) Please help me!!! dd -- http://mail.python.org/mailman/listinfo/python-list
Re: Coding conventions for class names
Marc 'BlackJack' Rintsch wrote: In [EMAIL PROTECTED], Kay Schluehr wrote: set, int, float, list, object,... Don't see any of the basic types following the capitalized word convention for classes covered by PEP 08. This does not hold only for __builtins__ in the strict sense but also for types defined in builtin modules like datetime. Most built-ins are easy to explain: They were functions long before it was possible to use them as base classes and stayed lowercase for backwards compatibility. Don't know about `set` and `object`. I guess it's foolish consistency!? Well originally there was sets.Set (uppercase). It became set when it went to being a built-in. -- Michael Hoffman -- http://mail.python.org/mailman/listinfo/python-list
Re: Would You Write Python Articles or Screencasts for Money?
On 2007-04-25, Anton Vredegoor [EMAIL PROTECTED] wrote: Antoon Pardon wrote: That's a good point, and also a valid reason for restricting the voting community to PSF members. Thanks, Alex. So in order to avoid a suspicion of a conflict of interest you want to turn the whole thing into private property of the PSF? That is the most ridiculous suggestion I have ever I kind of understand why they would want to do this. If you have no limitations on who may vote, such a contest can easily turn into a contest of who can mobilize the biggest clan of supporters. Sure, any democratic process can be derailed by a coordinated effort of people with a different mentality. To prevent such things by killing the democratic process oneself right at the beginning of a project is a peculiar way of avoiding this risk. As far as I understood the idea was to reward excellence. The process to achieve this can be democratic, but in that case it is just a means to an end. The democratic process was not an end itself. So talking about this as if the democratic process itself was somehow the goal seems to miss what it is about. -- Antoon Pardon -- http://mail.python.org/mailman/listinfo/python-list
Re: trinary operator - if then else
Michael Does Python 2.4 support it? Not precisely, but you can *usually* get away with: a and b or c This is really bad advice, as long as you don't explain why it usually works (and often enough not). This for example won't work: False or '' and 0 '' The reason is that the if-value has to be bool(v) == True, otherwise the short-circuiting of the and will prevent the 0 from being returned. So in general, _don't_ use this! Diez -- http://mail.python.org/mailman/listinfo/python-list
jython: user-defined modules
Dear all, I hope my question is here in the right place... What I want to achieve is a communication between Java and Python. We have a pretty strong framework of existing python scripts and modules. Now I want to use jython in order to faciliate the communication between another Java framework. But I`m currently stuck with jython: Trying to import the user-defined python modules, these cannot be found. I read a lot about the jython registry and I setup a $HOME/.jython file where I created a python.path=... resource, however, when I start the jython command line and type print python.path then this property is not found. Passing it with the -D option does not work as well, or maybe I`m too confused to make it work anyway? Any help would be great! Best regards Greg -- http://mail.python.org/mailman/listinfo/python-list
Re: Now()
I'm using the following function 'str (now)' to place a date time stamp into a log file, which works fine, however it writes the stamp like this. 2007-04-25 11:06:53.873029 But I need to expel those extra decimal places as they're causing problems with the application that parses the log data, all I need is something like this: 2007-04-25 11:06:53 Please see http://docs.python.org/lib/module-time.html Daniel -- http://mail.python.org/mailman/listinfo/python-list
Re: Would You Write Python Articles or Screencasts for Money?
Antoon Pardon wrote: On 2007-04-25, Anton Vredegoor [EMAIL PROTECTED] wrote: Antoon Pardon wrote: That's a good point, and also a valid reason for restricting the voting community to PSF members. Thanks, Alex. So in order to avoid a suspicion of a conflict of interest you want to turn the whole thing into private property of the PSF? That is the most ridiculous suggestion I have ever I kind of understand why they would want to do this. If you have no limitations on who may vote, such a contest can easily turn into a contest of who can mobilize the biggest clan of supporters. Sure, any democratic process can be derailed by a coordinated effort of people with a different mentality. To prevent such things by killing the democratic process oneself right at the beginning of a project is a peculiar way of avoiding this risk. As far as I understood the idea was to reward excellence. The process to achieve this can be democratic, but in that case it is just a means to an end. The democratic process was not an end itself. Yes, but this sub thread was about avoiding a suspicion of a conflict of interests. If this suspicion is to be avoided by just openly promoting the interests of the members of the PSF that is one hell of a way of solving the problem. A. -- http://mail.python.org/mailman/listinfo/python-list
Re: Now()
Robert Rawlins - Think Blue wrote: I'm using the following function 'str (now)' to place a date time stamp into a log file, which works fine, however it writes the stamp like this. 2007-04-25 11:06:53.873029 But I need to expel those extra decimal places as they're causing problems with the application that parses the log data, all I need is something like this: 2007-04-25 11:06:53 With time depicted to the nearest second, from my background in ColdFusion development we used to have a datetimeformat() function that I could use as DateTimeFormat(now(), -mm-dd HH:mm:ss) Which would give the current time a mask. Any equivalent for this in python? You want the strftime method which is documented under the time module. trivial example import datetime print datetime.datetime.now ().strftime (%Y-%m-%d etc.) /trivial example TJG -- http://mail.python.org/mailman/listinfo/python-list
RE: Tutorial creates confusion about slices
-Original Message- From: [EMAIL PROTECTED] [mailto:python- [EMAIL PROTECTED] On Behalf Of Antoon Pardon Sent: Tuesday, April 24, 2007 7:40 AM To: python-list@python.org Subject: Re: Tutorial creates confusion about slices On 2007-04-24, Michael Bentley [EMAIL PROTECTED] wrote: On Apr 24, 2007, at 6:35 AM, Antoon Pardon wrote: People don't read tutorials in a strictly linear fashion. They can continue to later subjects and then come back here to see how things tie together. So the fact that it is only confusing to those who know more than is already presented doesn't seem a very good reason to leave it in. Yet they understand that earlier in the document, there is likely to be a less complete coverage of a given topic. There is in fact, a link on that page that includes a more complete coverage of that topic (which I mentioned to you in an earlier message IIRC). That there is more complete coverage elsewhere is no good reason to come with an explanation that suggests things working in a way that will be contradicted by that more complete coverage. Even after people have read the more complete coverage it is still very possible that they will come back to this part of the text and get the wrong idea of how things work. That's how everything I've ever learned has been taught. Start with a simple explanation that may not be completely accurate but is functional, then fill in the details later when there is a context to put them in. The tutorial could start out by explaining everything at the implementation level; it doesn't because it is a _tutorial_, intended to give new users the context they need to understand the more complicated nuances of the language. If it covered every fiddly little detail, it wouldn't be a tutorial. It would be a language reference document instead. A more complete coverage elsewhere is not an adequate remedy for a tekst suggesting things working differently than they actually do. Sure in the long run people will figger out how things actually work and that the explanation given in that section is totally inadequate for negative steps. But I prefer that people don't loose too much time figgering out that a particular explanation only works for particular cases and not in general. Submit a patch if you want it changed. I'm sure your valuable insights will greatly improve the quality of the python documentation. Fat chance, if they reason like you. So you're saying your insights aren't valuable? --- -Bill Hamilton -- http://mail.python.org/mailman/listinfo/python-list
Re: jython: user-defined modules
Gregor Stich wrote: Dear all, I hope my question is here in the right place... What I want to achieve is a communication between Java and Python. We have a pretty strong framework of existing python scripts and modules. Now I want to use jython in order to faciliate the communication between another Java framework. But I`m currently stuck with jython: Trying to import the user-defined python modules, these cannot be found. I read a lot about the jython registry and I setup a $HOME/.jython file where I created a python.path=... resource, however, when I start the jython command line and type print python.path then this property is not found. Passing it with the -D option does not work as well, or maybe I`m too confused to make it work anyway? First of all, you should subscribe to the jython mailing list. Second, you access the python.path inside jython via import sys print sys.path HTH, Diez -- http://mail.python.org/mailman/listinfo/python-list
Re: [python-advocacy] Would You Write Python Articles or Screencasts for Money?
2007/4/25, Hendrik van Rooyen [EMAIL PROTECTED]: Most bugs fixed in the month for the developers? (Watch them scrabbling for the easy ones - G ) Most Patches reviewed and incorporated? These numbers are easy to acquire. Note, though, that the name of the developer in a top ten of these numbers in a public place (like python.org), and a mention in a weekly report in the main python mailing lists, will be enough prize most of the times... Regards, -- .Facundo Blog: http://www.taniquetil.com.ar/plog/ PyAr: http://www.python.org/ar/ -- http://mail.python.org/mailman/listinfo/python-list
Re: When are immutable tuples *essential*? Why can't you just use lists *everywhere* instead?
On 2007-04-24, Thomas Nelson [EMAIL PROTECTED] wrote: On Apr 23, 10:38 pm, Mel Wilson [EMAIL PROTECTED] wrote: Even with a balanced tree, if a key in a node changes value, you may have to re-balance the tree. Nothing in a Python list says that a dictionary tree would have to be re-balanced if you changed that particular list. You don't have to look at any implementation. A dictionary maps every key to exactly one object. If the objects were mutable, you could change one key to another key, and then which item would the dictionary pull? (Imaginary code) d = {[1,2,3]: 'hat', [1,2,4]: 'sock' } for key in d: key.pop() print d[[1,2]] #does this print hat or sock? That would be documented as undefined behavior, and users exhorted not to do such things. Python's dictionaries are a proven winner--I'm definitely not an advocate for changing them. But the general requirement for a mapping container *isn't* that keys be immutable, but that you either don't mutate keys, or don't do so without also reording (rehashing?) the mapping. -- Neil Cerutti -- http://mail.python.org/mailman/listinfo/python-list
Re: When are immutable tuples *essential*? Why can't you just use lists *everywhere* instead?
Neil Cerutti wrote: On 2007-04-24, Thomas Nelson [EMAIL PROTECTED] wrote: On Apr 23, 10:38 pm, Mel Wilson [EMAIL PROTECTED] wrote: Even with a balanced tree, if a key in a node changes value, you may have to re-balance the tree. Nothing in a Python list says that a dictionary tree would have to be re-balanced if you changed that particular list. You don't have to look at any implementation. A dictionary maps every key to exactly one object. If the objects were mutable, you could change one key to another key, and then which item would the dictionary pull? (Imaginary code) d = {[1,2,3]: 'hat', [1,2,4]: 'sock' } for key in d: key.pop() print d[[1,2]] #does this print hat or sock? That would be documented as undefined behavior, and users exhorted not to do such things. Python's dictionaries are a proven winner--I'm definitely not an advocate for changing them. But the general requirement for a mapping container *isn't* that keys be immutable, but that you either don't mutate keys, or don't do so without also reording (rehashing?) the mapping. And which API do you use to reord(er?) (rehash) the mapping? regards Steve -- Steve Holden +1 571 484 6266 +1 800 494 3119 Holden Web LLC/Ltd http://www.holdenweb.com Skype: holdenweb http://del.icio.us/steve.holden Recent Ramblings http://holdenweb.blogspot.com -- http://mail.python.org/mailman/listinfo/python-list
Re: Tutorial creates confusion about slices
Antoon Pardon wrote: On 2007-04-25, Ant [EMAIL PROTECTED] wrote: On Apr 23, 1:38 pm, Antoon Pardon [EMAIL PROTECTED] wrote: The following is part of the explanation on slices in the tutorial: The best way to remember how slices work is to think of the indices as ... +---+---+---+---+---+ | H | e | l | p | A | +---+---+---+---+---+ 0 1 2 3 4 5 -5 -4 -3 -2 -1 For a tutorial this is sound advice. A tutorial is designed to give readers an easy intro to a topic, which is what this achieves. At this stage the target audience has no idea that extended slices even exist, let alone that you can use negative indices with them. OK. But eventually they will come into contact with negative indexes. If they still rely on the above representation for understanding slices that may cause confusions. It is possible that the time lost in clearing up these later confusions will be bigger than the time gained by using this simplification in the tutorial. So I'm not so sure it is sound advice in this case. If the consensus is that something like this should remain, I would suggest replacing: The best way to remember how slices work is with: A way to remember how slices work, it is not entirly correct but may be usefull, is Or something similar. Wording to that effect makes it more clear that it is a crutch that can be usefull now but that it should be discarded later. Most people reading a tutorial are aware that they are being given the knowledge they need to put the subject matter to immediate use, and that there may well be refinements that are glossed over or covered in detail later or elsewhere. I don't believe this needs to be made explicit wherever it applies. regards Steve -- Steve Holden +1 571 484 6266 +1 800 494 3119 Holden Web LLC/Ltd http://www.holdenweb.com Skype: holdenweb http://del.icio.us/steve.holden Recent Ramblings http://holdenweb.blogspot.com -- http://mail.python.org/mailman/listinfo/python-list
Re: Socket exceptions aren't in the standard exception hierarchy
John Nagle wrote: Steve Holden wrote: John Nagle wrote: Steve Holden wrote: John Nagle wrote: [socket.error bug report] All these notes should be included in the bug report, as I suspect the module would benefit from additional clarity. Done. See [ 1706815 ] socket.error exceptions not subclass of StandardError Also see [ 805194 ] Inappropriate error received using socket timeout [ 1019808 ] wrong socket error returned [ 1571878 ] Improvements to socket module exceptions [ 708927 ] socket timeouts produce wrong errors in win32 for related but not identical problems in that area. Thanks. At least this is less likely to be overlooked now. regards Steve -- Steve Holden +1 571 484 6266 +1 800 494 3119 Holden Web LLC/Ltd http://www.holdenweb.com Skype: holdenweb http://del.icio.us/steve.holden Recent Ramblings http://holdenweb.blogspot.com -- http://mail.python.org/mailman/listinfo/python-list
Python not giving free memory back to the os get's me in real problems ...
So I read quite a few things about this phenomenon in Python 2.4.x but I can hardly believe that there is really no solution to my problem. We use a commercial tool that has a macro functionality. These macros are written in python. So far nothing extraordinary. Our (python-)macro uses massively nested loops which are unfortunately necessary. These loops perform complex calculations in this commercial tool. To give you a quick overview how long this macros runs: The outer loop takes 5-7 hours for one cycle. Each cycle creates one outputfile. So we would like to perform 3-5 outer cycles en bloc. Unfortunately one of our computers (768MB RAM) crashes after just ~10% of the first cycle with the following error message: http://img2.freeimagehosting.net/uploads/7157b1dd7e.jpg while another computer (1GB RAM) crashes after ~10% of the fourth loop. While the virtual memory on the 1gb machine was full to the limit when it crashed the memory usage of the 768mb machine looked this this: http://img2.freeimagehosting.net/uploads/dd15127b7a.jpg The moment I close the application that launched the macro, my ressources get freed. So is there a way to free my memory inside my nested loops? thanks in advance, tim -- http://mail.python.org/mailman/listinfo/python-list
Re: Python un-plugging the Interpreter
John Nagle wrote: Alex Martelli wrote: Jorgen Grahn [EMAIL PROTECTED] wrote: ... Perhaps the current wave of dual-core and quad-core CPUs in cheap consumer products would change people's perceptions -- I wonder... IronPython would appear to be coming along nicely and getting acceptance in the Windows community, and I believe the underlying dotNet CLR does do threads nicely; we'll see what develops on that front, I guess. Thus we now have a demonstration that Python implementations need not be as slow as CPython. And that Microsoft is beating open source on Python. Well, let's remember that a) IronPython was originally developed independently of Microsoft, and b) it's still open source or close to it (I.'m not familiar with the OSI's opinion on the license Microsoft use to distribute IronPython, but the fact it can be included in the FePy distribution bodes well). Python as a language is in good shape. But the CPython implementation is holding back progress. What we need are better and faster implementations of the language we've got. Hear, hear! PyPy, ShedSkin, and Jython all were steps in the right direction, but none had enough momentum to make it. Jython hasn't had a release since 2002, ShedSkin is basically one guy, and the EU pulled the plug on PyPy. Hey there, loose talk costs lives, you know. That is a complete mischaracterization of the true position. Progress on Jython may not have been stellar, but it has occurred and is ongoing. Yes, Shedskin is one guy, but so was Psyco and that was (and remains) a useful tool. As far as I am aware the PyPy project has come to the end of its initial EU funding, and they chose to focus on producing deliverables close to the end of the project phase rather that divert effort into securing ongoing funding. So nobody has pulled the plug, and I believe there is every possibility of a further round of funded research and development in the future. Certainly the results to date would justify that action on the part of the EU. I don't know if and when the request for further funding will be submitted. Now what? Work continues. Rome wasn't built in a day, you know. regards Steve -- Steve Holden +1 571 484 6266 +1 800 494 3119 Holden Web LLC/Ltd http://www.holdenweb.com Skype: holdenweb http://del.icio.us/steve.holden Recent Ramblings http://holdenweb.blogspot.com -- http://mail.python.org/mailman/listinfo/python-list
Re: Tutorial creates confusion about slices
Steve Holden [EMAIL PROTECTED] wrote: Wording to that effect makes it more clear that it is a crutch that can be usefull now but that it should be discarded later. Most people reading a tutorial are aware that they are being given the knowledge they need to put the subject matter to immediate use, and that there may well be refinements that are glossed over or covered in detail later or elsewhere. The authors of 'The Science of Discworld' coined a term for this 'lies to children' where an explanation to a student is technically wrong but is pitched at the appropriate level for the student. See http://en.wikipedia.org/wiki/Lie-to-children -- http://mail.python.org/mailman/listinfo/python-list
Re: PIL and font colour
Johny wrote: I use PIL to write some text to a picture.The text must be seen wery clearly. I write the text to different pictures but to the same position. As pictures maybe different, colour, in the position where I write the text, is also different. Is there a way how to set the font colour so that it will be seen very clearly in the picture? For example, if the picture is bright ( for example yellow), the font colour should be dark( e.g. black) and vice versa. Can anyone help? Thanks L. The easy way to ensure this is to paint a background rectangle of an appropriate color to ensure good font contrast before writing the text. Of course, this obscures rather more of the image in the background than you might otherwise. Apart from that you could try averaging the pixel values in the area you are going to paint on, and then choose a font color that contrasts well with the average. If there are large variations in color, however, this can give disappointing results. If you'd like to get some insight into color contrast you could do worse than start at http://wellstyled.com/tools/colorscheme2/index-en.html regards Steve -- Steve Holden +1 571 484 6266 +1 800 494 3119 Holden Web LLC/Ltd http://www.holdenweb.com Skype: holdenweb http://del.icio.us/steve.holden Recent Ramblings http://holdenweb.blogspot.com -- http://mail.python.org/mailman/listinfo/python-list
Re: Tutorial creates confusion about slices
On 2007-04-25, Hamilton, William [EMAIL PROTECTED] wrote: That's how everything I've ever learned has been taught. Start with a simple explanation that may not be completely accurate but is functional, then fill in the details later when there is a context to put them in. The tutorial could start out by explaining everything at the implementation level; it doesn't because it is a _tutorial_, intended to give new users the context they need to understand the more complicated nuances of the language. If it covered every fiddly little detail, it wouldn't be a tutorial. It would be a language reference document instead. Presenting a simplified model is a good technique, but when a simplified model is presented it should be clearly stated wether or not that model will eventually prove inadequate. Is the divider-between-elements model presented in the tutorial really the best way to understand half-open range notation? I vote we change the word best to possible in the excerpt. -- Neil Cerutti -- http://mail.python.org/mailman/listinfo/python-list
Python not giving free memory back to the os get's me in real problems ...
Hi! I got same problem with Lotus Domino + Python. The lotus COM objects are not freed, so I get out from memory. I solve this problem with a little trick: I make two py applications. The first is call the second as like another application. The first is put some work to the seconds datadir. Whe second is finished with it, it is close itself. Because the memory operations are existing in only the second script, all memory get freed after it is finished, and the first (controller) py script can call the next session without any problem. dd 25 Apr 2007 07:08:42 -0700, [EMAIL PROTECTED] [EMAIL PROTECTED]: So I read quite a few things about this phenomenon in Python 2.4.x but I can hardly believe that there is really no solution to my problem. We use a commercial tool that has a macro functionality. These macros are written in python. So far nothing extraordinary. Our (python-)macro uses massively nested loops which are unfortunately necessary. These loops perform complex calculations in this commercial tool. To give you a quick overview how long this macros runs: The outer loop takes 5-7 hours for one cycle. Each cycle creates one outputfile. So we would like to perform 3-5 outer cycles en bloc. Unfortunately one of our computers (768MB RAM) crashes after just ~10% of the first cycle with the following error message: http://img2.freeimagehosting.net/uploads/7157b1dd7e.jpg while another computer (1GB RAM) crashes after ~10% of the fourth loop. While the virtual memory on the 1gb machine was full to the limit when it crashed the memory usage of the 768mb machine looked this this: http://img2.freeimagehosting.net/uploads/dd15127b7a.jpg The moment I close the application that launched the macro, my ressources get freed. So is there a way to free my memory inside my nested loops? thanks in advance, tim -- http://mail.python.org/mailman/listinfo/python-list -- http://mail.python.org/mailman/listinfo/python-list
Re: Would You Write Python Articles or Screencasts for Money?
Anton Vredegoor wrote: Steve Holden wrote: When cash is involved, it's important to avoid even the slightest hint of a suggestion of a suspicion of a conflict of interest; that, I guess, is why firms that run contests with cash prizes always declare employees and their families not eligible, and why I think the PSF should do likewise in this case. That's a good point, and also a valid reason for restricting the voting community to PSF members. Thanks, Alex. So in order to avoid a suspicion of a conflict of interest you want to turn the whole thing into private property of the PSF? That is the most ridiculous suggestion I have ever I presume that interruption came to us courtesy of the PSU? Since it's the PSF's money I don't see why the voting shouldn't be restricted to PSF members. I could be persuaded otherwise, but I haven't yet heard anything persuasive. At least most PSF members start out with a record of contribution to some aspect of Python, which is the reason they were invited to membership in the first place. Or should we ask the Perl Foundation to vote on awards too? regards Steve -- Steve Holden +1 571 484 6266 +1 800 494 3119 Holden Web LLC/Ltd http://www.holdenweb.com Skype: holdenweb http://del.icio.us/steve.holden Recent Ramblings http://holdenweb.blogspot.com -- http://mail.python.org/mailman/listinfo/python-list
Re: Would You Write Python Articles or Screencasts for Money?
Anton Vredegoor wrote: Antoon Pardon wrote: That's a good point, and also a valid reason for restricting the voting community to PSF members. Thanks, Alex. So in order to avoid a suspicion of a conflict of interest you want to turn the whole thing into private property of the PSF? That is the most ridiculous suggestion I have ever I kind of understand why they would want to do this. If you have no limitations on who may vote, such a contest can easily turn into a contest of who can mobilize the biggest clan of supporters. Sure, any democratic process can be derailed by a coordinated effort of people with a different mentality. To prevent such things by killing the democratic process oneself right at the beginning of a project is a peculiar way of avoiding this risk. I'm sorry, but while the PSF is a democratically-run organization its franchise doesn't extend beyond the membership. You might as well suggest that America isn't being democratic because it doesn't allow the French to vote for its president. Now maybe there are better ways to avoid this kind of unwanted effect but I wouldn't call Steve's suggestion ridiculous. It's about as ridiculous as proving that a stiff parrot is dead by grabbing it by the legs and repeatedly hitting it's head on the counter. So you are now saying my behavior is completely appropriate? regards Steve -- Steve Holden +1 571 484 6266 +1 800 494 3119 Holden Web LLC/Ltd http://www.holdenweb.com Skype: holdenweb http://del.icio.us/steve.holden Recent Ramblings http://holdenweb.blogspot.com -- http://mail.python.org/mailman/listinfo/python-list
Re: Would You Write Python Articles or Screencasts for Money?
Anton Vredegoor wrote: Antoon Pardon wrote: On 2007-04-25, Anton Vredegoor [EMAIL PROTECTED] wrote: Antoon Pardon wrote: That's a good point, and also a valid reason for restricting the voting community to PSF members. Thanks, Alex. So in order to avoid a suspicion of a conflict of interest you want to turn the whole thing into private property of the PSF? That is the most ridiculous suggestion I have ever I kind of understand why they would want to do this. If you have no limitations on who may vote, such a contest can easily turn into a contest of who can mobilize the biggest clan of supporters. Sure, any democratic process can be derailed by a coordinated effort of people with a different mentality. To prevent such things by killing the democratic process oneself right at the beginning of a project is a peculiar way of avoiding this risk. As far as I understood the idea was to reward excellence. The process to achieve this can be democratic, but in that case it is just a means to an end. The democratic process was not an end itself. Yes, but this sub thread was about avoiding a suspicion of a conflict of interests. If this suspicion is to be avoided by just openly promoting the interests of the members of the PSF that is one hell of a way of solving the problem. Perhaps you misunderstood. The quote you were reacting to said ... for restricting the *voting* community to PSF members (emphasisi added here). In other words, the PSF members get to decide who wins awards, while themselves being ineligible. Does this make a difference? regards Steve -- Steve Holden +1 571 484 6266 +1 800 494 3119 Holden Web LLC/Ltd http://www.holdenweb.com Skype: holdenweb http://del.icio.us/steve.holden Recent Ramblings http://holdenweb.blogspot.com -- http://mail.python.org/mailman/listinfo/python-list
Re: Python not giving free memory back to the os get's me in real problems ...
[EMAIL PROTECTED] wrote: So I read quite a few things about this phenomenon in Python 2.4.x but I can hardly believe that there is really no solution to my problem. We use a commercial tool that has a macro functionality. These macros are written in python. So far nothing extraordinary. Our (python-)macro uses massively nested loops which are unfortunately necessary. These loops perform complex calculations in this commercial tool. To give you a quick overview how long this macros runs: The outer loop takes 5-7 hours for one cycle. Each cycle creates one outputfile. So we would like to perform 3-5 outer cycles en bloc. Unfortunately one of our computers (768MB RAM) crashes after just ~10% of the first cycle with the following error message: http://img2.freeimagehosting.net/uploads/7157b1dd7e.jpg while another computer (1GB RAM) crashes after ~10% of the fourth loop. While the virtual memory on the 1gb machine was full to the limit when it crashed the memory usage of the 768mb machine looked this this: http://img2.freeimagehosting.net/uploads/dd15127b7a.jpg The moment I close the application that launched the macro, my ressources get freed. So is there a way to free my memory inside my nested loops? thanks in advance, tim Let's see for this I need to get out my crystal ball... If it is a commercial application, you should contact their tech support for a solution. The problem isn't specifically a Python problem but rather an implementation problem with their app. -Larry -- http://mail.python.org/mailman/listinfo/python-list
Re: gotcha or bug? random state reset on irrelevant import
Alex Martelli said: What do you mean? Just instantiate the random.Random class and you can call .seed on it as well as anything else, and no other module will infringe on your module's Random instance. The global functions of module random exist for those who *SPECIFICALLY* want globally shared behavior, of course. I consider this an unduly kind response. RTFM would have been appropriate. The functions supplied by this module are actually bound methods of a hidden instance of the random.Random class. You can instantiate your own instances of Random to get generators that don't share state. Sheesh. I must have been asleep when reading the documentation. Thanks, Alan -- http://mail.python.org/mailman/listinfo/python-list
Re: When are immutable tuples *essential*? Why can't you just use lists *everywhere* instead?
On 2007-04-25, Steve Holden [EMAIL PROTECTED] wrote: Neil Cerutti wrote: That would be documented as undefined behavior, and users exhorted not to do such things. Python's dictionaries are a proven winner--I'm definitely not an advocate for changing them. But the general requirement for a mapping container *isn't* that keys be immutable, but that you either don't mutate keys, or don't do so without also reording (rehashing?) the mapping. And which API do you use to reord(er?) (rehash) the mapping? A pretty complex an unnecessary one, I'd guess. ;) Since you would most likely need to remove the changed key from the mapping, and then reinsert the new one, it's just as well to leave the whole process entirely up to the user. Which is how Python currently works. ;) -- Neil Cerutti -- http://mail.python.org/mailman/listinfo/python-list
Re: Python not giving free memory back to the os get's me in real problems ...
Larry Bates [EMAIL PROTECTED] wrote: Let's see for this I need to get out my crystal ball... If it is a commercial application, you should contact their tech support for a solution. The problem isn't specifically a Python problem but rather an implementation problem with their app. -Larry Well one part of the problem maybe really is on the side of this tool. Because the implementation of the macro functionality is really crappy. But unfortunately there are no competitive-product we could switch too, so we have to live with this poor environment. But I don't think that the WHOLE problem lies inside this tool. Because I read http://mail.python.org/pipermail/python-dev/2005-January/051255.html and http://evanjones.ca/python-memory.html Sadly we can't switch from Python 2.4 to 2.5 because this stupid macro functionality only supports 2.4.x I really know that all this is not the best setup to get happy with but there really is no other setup available. So I'm happy for every input all of you can give me. greetings, tim -- http://mail.python.org/mailman/listinfo/python-list
Re: override settrace
Raja wrote: Hi, I want to override the sys.settrace() call, create a way to trace the execution of a python program. Keep track of all objects created and destroyed. Keep track of the call pattern throughout the execution of the program and output a simplified call graph to standard out. Please help me in this regard. Thank You, How many times do you intend to post this question before waiting patiently for an answer? regards Steve -- Steve Holden +1 571 484 6266 +1 800 494 3119 Holden Web LLC/Ltd http://www.holdenweb.com Skype: holdenweb http://del.icio.us/steve.holden Recent Ramblings http://holdenweb.blogspot.com -- http://mail.python.org/mailman/listinfo/python-list
Re: Python Screen Scraper
On Apr 24, 6:17 am, Michael Bentley [EMAIL PROTECTED] wrote: On Apr 24, 2007, at 11:50 AM, James Stroud wrote: Hello, Does anyone know of an example, however modest, of a screenscraper authored in python? I am using Firefox. Basically, I am answering problems via my browser and being scored for each problem. I have a tendency to go past my peak for training efficiency, so I would like to scrape the result page for each problem I answer, compile statistics, and have a program alert me when I should stop (based on score and accuracy--assuming training value is related to changes in these metrics). I have no idea how to go about writing such a beast and I am hoping that I could get some pointers or an example that could get me going in the right direction. Parsing, etc, is not a problem, but I'm not exactly sure how I might interface python with Firefox, forwarding scraped pages to my browser (or forwarding from the browser to the scraper). Thanks in advance for any help or advice. Possibly the easiest thing will be to read from firefox' cache. Otherwise I think your only real options are to either build a proxy or sniff the wire... You could try twill http://twill.idyll.org/python-api.html -- http://mail.python.org/mailman/listinfo/python-list
Re: Python not giving free memory back to the os get's me in real problems ...
On 25 Apr 2007 15:04:59 GMT, TimC [EMAIL PROTECTED] wrote: Larry Bates [EMAIL PROTECTED] wrote: Let's see for this I need to get out my crystal ball... If it is a commercial application, you should contact their tech support for a solution. The problem isn't specifically a Python problem but rather an implementation problem with their app. -Larry Well one part of the problem maybe really is on the side of this tool. Because the implementation of the macro functionality is really crappy. But unfortunately there are no competitive-product we could switch too, so we have to live with this poor environment. But I don't think that the WHOLE problem lies inside this tool. Because I read http://mail.python.org/pipermail/python-dev/2005-January/051255.html and http://evanjones.ca/python-memory.html Sadly we can't switch from Python 2.4 to 2.5 because this stupid macro functionality only supports 2.4.x I really know that all this is not the best setup to get happy with but there really is no other setup available. So I'm happy for every input all of you can give me. The problem you're seeing almost certainly isn't related to the memory arena issues referenced on the list. Returning memory to the OS doesn't affect exhaustion of your virtual address space. More likely, your nested loops are just creating more objects than is possible to hold within a single process. That may be because you're working with very large data sets, or because you have some sort of ref cycle problem, or simply because you hold onto references you no longer need. You'll need to do more work to diagnose the exact details before you can find a fix. Contacting your vendor support would be a really good first step. It's possible that you have a degenerate case that triggers some of the arena problems (like allocation 10 million integers, and then never using them again), and thats the root of your problem. Without knowing more about the usage pattern of your application, theres no way we can determine that. If you can't upgrade to python 2.5, your only solution is going to be to rework your algorithm to not do that. Again, contacting your vendor support is going to be the first step. -- http://mail.python.org/mailman/listinfo/python-list
Re: trinary operator - if then else
Diez B. Roggisch [EMAIL PROTECTED] wrote: Michael Does Python 2.4 support it? Not precisely, but you can *usually* get away with: a and b or c This is really bad advice, as long as you don't explain why it usually works (and often enough not). This for example won't work: False or '' and 0 '' You can use this if you want it to be bullet proof (a and [b] or [c])[0] Not exactly elegant though! -- Nick Craig-Wood [EMAIL PROTECTED] -- http://www.craig-wood.com/nick -- http://mail.python.org/mailman/listinfo/python-list
key detect
Hi everybody, does anyone know how to detect a key press from a keyboard. Well I do know how to do that, but i need to detect just one press and ignore the others. I mean, my program checks an input from the outside (a sensor) and i emulate that signal as a keypress, but the sensor doesn`t send the signal as a unique pulse y just keeps sending signal during some seconds, so that is like to be pressing one key for a period of time. How can i take that first press of a key and ignore the others? I am using pygtk. thanks everybody! -- http://mail.python.org/mailman/listinfo/python-list
Another Python Game Programming Challenge concludes
The fourth Python Game Programming Challenge (PyWeek) has now concluded with judges (PyWeek being peer-judged) declaring the winners: Individual: Which way is up? by Hectigo http://www.pyweek.org/e/Hectic/ Team: Bubble Kong by The Olde Battleaxe http://www.pyweek.org/e/toba4/ Congratulations to them and to the other entrants. You may view the complete listing of entries here: http://www.pyweek.org/4/entries/ and the scores here: http://media.pyweek.org/static/pyweek4_ratings.html and everything else about PyWeek is here: http://www.pyweek.org/ Before anyone asks, the next challenge will be in 6 months. There is no a date set. Richard Jones (the PyWeek guy ;) -- http://mail.python.org/mailman/listinfo/python-announce-list Support the Python Software Foundation: http://www.python.org/psf/donations.html !DSPAM:462b8a38103129399229859! -- http://mail.python.org/mailman/listinfo/python-list
key detect
Hi everybody, does anyone know how to detect a key press from a keyboard. Well I do know how to do that, but i need to detect just one press and ignore the others. I mean, my program checks an input from the outside (a sensor) and i emulate that signal as a keypress, but the sensor doesn`t send the signal as a unique pulse y just keeps sending signal during some seconds, so that is like to be pressing one key for a period of time. How can i take that first press of a key and ignore the others? I am using pygtk. thanks everybody! -- http://mail.python.org/mailman/listinfo/python-list
gcov-like python code coverage
Just in case something already exist for this. Is there some tool, that can produce gcov-type coverage out of a python code ? I have an already existing regex code that turn gcov output into XML, which I'd like to reuse. thanks ! -Mathieu -- http://mail.python.org/mailman/listinfo/python-list
Re: Python not giving free memory back to the os get's me in real problems ...
On 2007-04-25, Chris Mellon [EMAIL PROTECTED] wrote: Returning memory to the OS doesn't affect exhaustion of your virtual address space. More likely, your nested loops are just creating more objects than is possible to hold within a single process. I'm a bit fuzzy on this, but I don't think there _is_ a practical way to return memory to the OS in many OSes. For example in Unix the C library uses the sbrk() call to increase the size of the data segment when additional memory is needed to handle soemthing like malloc() calls. In theory, one can use brk() to reduce the size of the data segment, but I think making the segment smaller will produce undefined behavior if any of the standard C library's dynamic memory routines (e.g. malloc/free) have ever been used by the program prior to the call to brk(). -- Grant Edwards grante Yow! FEELINGS are cascading at over me!!! visi.com -- http://mail.python.org/mailman/listinfo/python-list
Re: Advocacy: Python up, Ruby down.
Paddy [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] |I found this blog post on one users migration to Python. It states one | users frustrations but the comments section is quite good too. | | http://blog.cbcg.net/articles/2007/04/22/python-up-ruby-down-if-that-runtime-dont-work-then-its-bound-to-drizzown | | The time and effort the developers spend on the balance between fixing | what we have over adding new features is hard, but it did pay off for | this programmer who was lured over by a more robust implementation and | good documentation. I think the author should be invited to contribute a Python Success Story for the site! Definitely worth reading. tjr -- http://mail.python.org/mailman/listinfo/python-list
Re: popen2 results
Robert Rawlins - Think Blue wrote: Hello guys, I've recently ported my application from bash to python, however there are still a few bash line utilities I -have- to use in the application as there isn't any alternative available to me. In the old days of bash I would have grep'd the output from these commands to determine the outcome. I'm now using popen2 to run the command which works a charm, but I'm struggling to parse the results of the function, has anyone had any experience with this? I've found a few suggested solutions dotted around, such as this one. import os def filtered(command, source): dest, result = os.popen2(command) dest.write(source) dest.close() try: return result.read() finally: result.close() But to be honest I'm struggling to get it to do anything as it doesn't states what the 'source' object is or should be. Thanks for any help guys, I'm just looking to capture the output from the command and then I can go about a little REGEX on it. Thanks, Rob check out os.popen3 as well. An Example? Let's assume you were doing 'ls -1', which at the console would give you a one column list of files (and yes, I know I can use glob.glob for this; this is an example). from os import popen3 ( sin, sout, serr ) = popen3( 'ls -1 /tmp' ) fList = sout.readlines() for f in fList: print f errors = serr.readlines() for line in errors: print line Now you have 3 file handles. sin: input (which I've never used, as I give popen3 a complete command) sout: the standard output stream serr: the standard error output You can read sout and serr and take action on them. Oh and each line has a '\n' linefeed (probably '\r\n' on Windows). Depending on what your doing with the output, you might want to use string.strip to eliminate the linefeeds. sph -- http://mail.python.org/mailman/listinfo/python-list
Re: Python not giving free memory back to the os get's me in real problems ...
Grant Edwards wrote: On 2007-04-25, Chris Mellon [EMAIL PROTECTED] wrote: Returning memory to the OS doesn't affect exhaustion of your virtual address space. More likely, your nested loops are just creating more objects than is possible to hold within a single process. I'm a bit fuzzy on this, but I don't think there _is_ a practical way to return memory to the OS in many OSes. For example in Unix the C library uses the sbrk() call to increase the size of the data segment when additional memory is needed to handle soemthing like malloc() calls. In theory, one can use brk() to reduce the size of the data segment, but I think making the segment smaller will produce undefined behavior if any of the standard C library's dynamic memory routines (e.g. malloc/free) have ever been used by the program prior to the call to brk(). Interesting questions. What happens when an object is 'cleaned' up by using the 'del' command. Does the memory space stay in the python process, get handed back to the OS, or some combination of both? I remember 'C' on VMS at least, could be coerced into return memory on block boundaries. 'C++' was suppose to have garbage collect, but I was always doubtful it worked well. sph -- http://mail.python.org/mailman/listinfo/python-list
Re: Would You Write Python Articles or Screencasts for Money?
Steve Holden [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] | Since it's the PSF's money I don't see why the voting shouldn't be | restricted to PSF members. Legally, I believe it *is* that way. And even as a non-member, I think it should be that way. Any expression of opinions, through a straw poll, or otherwise, is advisory. tjr -- http://mail.python.org/mailman/listinfo/python-list
Re: q: how to output a unicode string?
Diez B. Roggisch wrote: So why is it that in the first case I got UnicodeEncodeError: 'ascii' codec can't encode? Seems as if, within Idle, a utf-8 codec is being selected automagically... why should that be so there and not in the first case? I'm a bit confused on what you did when the error appears if you try to output a unicode-object without prior encoding - then the default encoding (ascii) is used. Here's a minimal example for you. I put these four lines into a utf-8 file. # -*- coding: utf-8 -*- # this file is called t3.py s1 = uhéllô wórld print s1 If I invoke python t3.py at the cygwin/rxvt/bash prompt, I get: Traceback (most recent call last): File t3.py, line 4, in module print s1 UnicodeEncodeError: 'ascii' codec can't encode character u'\xe9' in position 1: ordinal not in range(128) If I load the exact same file in Idle and press F5 (for Run), I get: héllô wórld So obviously the system is not behaving in the same way in the two cases. Maybe Python senses that it can do utf-8 when it's inside Idle and sets the default to utf-8 without me asking for it, and senses that it can't do (or more precisely output) utf-8 when it's in cygwin/rxvt/bash so there it sets the default codec to ascii. That's my best guess so far... I find the encode/decode terminology somewhat confusing, because arguably both sides are encoded. For example, a unicode-encoded string (I mean a sequence of unicode code points) should count as decoded in the terminology of this framework, right? Anyway, thanks again for your help, for deepening my modest understanding of the issue and for solving my original problem! -- http://mail.python.org/mailman/listinfo/python-list
Bibus/python locale not supported problem
Hi, I am running Gentoo Linux. I have emerge'd Bibus and everything seemed to go well. When I try to start it from a shell I get: [EMAIL PROTECTED] ~ $ bibus Traceback (most recent call last): File /usr/share/bibus/bibus.py, line 63, in ? locale.setlocale(locale.LC_ALL,'en_US') # use english if any problem File /usr/share/bibus/locale.py, line 381, in setlocale return _setlocale(category, locale) locale.Error: unsupported locale setting and it does not run. Can anyone suggest why? I am in the UK and where I get the option I choose en_GB. If this isn't a python problem sorry for bothering you all... I am not subscribed to this list but I will check nabble for replies. Thanks Tom -- View this message in context: http://www.nabble.com/Bibus-python-locale-not-supported-problem-tf3646227.html#a10183538 Sent from the Python - python-list mailing list archive at Nabble.com. -- http://mail.python.org/mailman/listinfo/python-list
lowercase class names, eg., qtgui ? (PyQt4)
Hello, In the file generated by pyuic4 from Designer's .ui file I noticed the use of lower case class names (I'm assuming these are the names of classes, not modules). For example: It imports thusly: from PyQt4 import QtGui then uses things like: self.gridlayout = qtgui.qgridlayout(dldialog) What exactly is going on here? Are these instances that are defined somewhere else (their not in the local scope.)? Can I do the same in my code when I import something? Thanks, Glen Glen -- http://mail.python.org/mailman/listinfo/python-list
Re: Python not giving free memory back to the os get's me in real problems ...
[EMAIL PROTECTED] wrote: So I read quite a few things about this phenomenon in Python 2.4.x but I can hardly believe that there is really no solution to my problem. We use a commercial tool that has a macro functionality. These macros are written in python. So far nothing extraordinary. Our (python-)macro uses massively nested loops which are unfortunately necessary. These loops perform complex calculations in this commercial tool. To give you a quick overview how long this macros runs: The outer loop takes 5-7 hours for one cycle. Each cycle creates one outputfile. So we would like to perform 3-5 outer cycles en bloc. Unfortunately one of our computers (768MB RAM) crashes after just ~10% of the first cycle with the following error message: http://img2.freeimagehosting.net/uploads/7157b1dd7e.jpg while another computer (1GB RAM) crashes after ~10% of the fourth loop. While the virtual memory on the 1gb machine was full to the limit when it crashed the memory usage of the 768mb machine looked this this: http://img2.freeimagehosting.net/uploads/dd15127b7a.jpg The moment I close the application that launched the macro, my ressources get freed. So is there a way to free my memory inside my nested loops? thanks in advance, tim Could you split the program into one handling the outer loop and calling another program, with data transfer, to handle the inner loops? - Paddy. -- http://mail.python.org/mailman/listinfo/python-list
Re: q: how to output a unicode string?
Frank Stajano [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] I find the encode/decode terminology somewhat confusing, because arguably both sides are encoded. For example, a unicode-encoded string (I mean a sequence of unicode code points) should count as decoded in the terminology of this framework, right? Yes. Unicode is the one true Universal Character Set, and everything else (including ASCII and UTF-8) is a mere encoding. Once you've got your head round that, things may make more sense. -- http://mail.python.org/mailman/listinfo/python-list
Re: Python not giving free memory back to the os get's me in real problems ...
On 2007-04-25, Steven Howe [EMAIL PROTECTED] wrote: I'm a bit fuzzy on this, but I don't think there _is_ a practical way to return memory to the OS in many OSes. For example in Unix the C library uses the sbrk() call to increase the size of the data segment when additional memory is needed to handle soemthing like malloc() calls. In theory, one can use brk() to reduce the size of the data segment, but I think making the segment smaller will produce undefined behavior if any of the standard C library's dynamic memory routines (e.g. malloc/free) have ever been used by the program prior to the call to brk(). Interesting questions. What happens when an object is 'cleaned' up by using the 'del' command. Does the memory space stay in the python process, get handed back to the OS, or some combination of both? Assuming the python interpreter free()s the memory, my understanding is that on Unixes the memory is returned to the pool used by malloc(), but is not returned to the OS since there isn't a practical way to ensure that the memory at the end of the data segment is not used. In theory, you could walk the data structures used by free/malloc and try to figure out if a free() should allow brk() to be called to reduce the data segment size. That would only happen if the free() call was freeing data that was at the end of the data segment. It's possible that some standard C libraries do that, but most of what I remember reading implies that they don't. I don't really keep current on libc details, so my info might be way out of date. Asking on the gnu libc mailing list would probably provide a more authoritative answer. I'd wager that they even know what other non-Gnu libc implementations do. I remember 'C' on VMS at least, could be coerced into return memory on block boundaries. You can call brk() in a C program to reduce the size of the data segment, but that may result in free and malloc breakage because you've returned (behind their back) some of the memory they are managing. 'C++' was suppose to have garbage collect, but I was always doubtful it worked well. -- Grant Edwards grante Yow! Why is everything made at of Lycra Spandex? visi.com -- http://mail.python.org/mailman/listinfo/python-list
Re: Python Screen Scraper
On Apr 24, 5:50 am, James Stroud [EMAIL PROTECTED] wrote: Hello, Does anyone know of an example, however modest, of a screenscraper authored in python? I am using Firefox. Basically, I am answering problems via my browser and being scored for each problem. I have a tendency to go past my peak for training efficiency, so I would like to scrape the result page for each problem I answer, compile statistics, and have a program alert me when I should stop (based on score and accuracy--assuming training value is related to changes in these metrics). I have no idea how to go about writing such a beast and I am hoping that I could get some pointers or an example that could get me going in the right direction. Parsing, etc, is not a problem, but I'm not exactly sure how I might interface python with Firefox, forwarding scraped pages to my browser (or forwarding from the browser to the scraper). Thanks in advance for any help or advice. James Hey James, This might be of interest to you: http://www.screen-scraper.com/support/docs/scripting_in_python.php Scott -- http://mail.python.org/mailman/listinfo/python-list
Controlling gnuplot via subprocess.Popen
I am trying to plot something in gnuplot 4.2 using co-ordinates a Python 2.5 program computes. Here's what I'm doing: py from subprocess import * py plot = Popen(c:/progs/gp/bin/wgnuplot.exe, stdin=PIPE) py plot.stdin.write(plot x*x) The first command dutifully opens gnuplot, but the second doesn't do anything. Could someone favour me with an explanation as to the whyness? -- Peter -- http://mail.python.org/mailman/listinfo/python-list
File not read to end
Hi, I'm trying to write a simple log parsing program. I noticed that it isn't reading my log file to the end. My log is around 200,000 lines but it is stopping at line 26,428. I checked that line and there aren't any special characters. This is the file reading code segment that I'm using: sysFile=open(sysFilename,'r') lineCount = 0 for line in sysFile: lineCount +=1 print str(lineCount) + -- + line I also stuck this same code bit into a test script and it was able to parse the entire log without problem. Very quirky. This is my first foray from Perl to Python so I appreciate any help. Thanks in advance. --Andrew -- http://mail.python.org/mailman/listinfo/python-list
Re: File not read to end
[EMAIL PROTECTED] wrote: Hi, I'm trying to write a simple log parsing program. I noticed that it isn't reading my log file to the end. My log is around 200,000 lines but it is stopping at line 26,428. I checked that line and there aren't any special characters. This is the file reading code segment that I'm using: sysFile=open(sysFilename,'r') lineCount = 0 for line in sysFile: lineCount +=1 print str(lineCount) + -- + line I also stuck this same code bit into a test script and it was able to parse the entire log without problem. Very quirky. This is my first foray from Perl to Python so I appreciate any help. Thanks in advance. --Andrew Show us more of your surrounding code so we have some chance of figuring out why this working code stops. There's nothing wrong with this code, the problem is somewhere else. Suggestion: lineCount = 0 for line in sysFile: lineCount +=1 print str(lineCount) + -- + line can be written: for lineCount, line in enumerate(sysFile): print %i--%s % (lineCount, line) -Larry -- http://mail.python.org/mailman/listinfo/python-list
Re: Python not giving free memory back to the os get's me in real problems ...
In article [EMAIL PROTECTED], Steven Howe [EMAIL PROTECTED] wrote: Interesting questions. What happens when an object is 'cleaned' up by using the 'del' command. Does the memory space stay in the python process, get handed back to the OS, or some combination of both? I remember 'C' on VMS at least, could be coerced into return memory on block boundaries. 'C++' was suppose to have garbage collect, but I was always doubtful it worked well. Note that UNIX (and VMS) use virtual memory. Real memory space gets handed back to the OS by default -- if you don't use it, you lose it. It isn't coercion, but it does happen on a per page basis, so fragmentation wastes space. If a Python program uses more space than it ought to need, then some knowledge of Python's reference counting allocation scheme will be useful. In particular, you need a fairly good grasp of what a reference is. Donn Cave, [EMAIL PROTECTED] -- http://mail.python.org/mailman/listinfo/python-list
Re: File not read to end
[EMAIL PROTECTED] wrote: My log is around 200,000 lines but it is stopping at line 26,428. I checked that line and there aren't any special characters. Are you in Windows? Just in case, put rb as the mode of the open. Regards, -- . Facundo . Blog: http://www.taniquetil.com.ar/plog/ PyAr: http://www.python.org/ar/ -- http://mail.python.org/mailman/listinfo/python-list
Re: Would You Write Python Articles or Screencasts for Money?
Steve Holden wrote: I'm sorry, but while the PSF is a democratically-run organization its franchise doesn't extend beyond the membership. I didn't realize this was about an PSF internal affair. Of course a group of people can decide on its internal matters without asking anyone else, as long as its actions do not damage the larger community around it. I'm sorry to have interfered with your private discussions, they took place on an international newsgroup aimed at the global python community at large, you might consider taking it elsewhere, but since there is no moderation, go and spam this group with your posts as much as you like. You might as well suggest that America isn't being democratic because it doesn't allow the French to vote for its president. Neither France nor America strike me as being very democratic at the moment, because large parts of their communities have no way of voting on a person or party that represents their specific interests. It's the same way in the Netherlands where I live by he way, so no criticism is intended by me, in any way. I was picturing this thread more in terms like the international court which at least constitutionally *tries* to be democratic in a global community alike manner, albeit unfortunately also failing miserably. It seems current western democracies are preferable over the total chaos that we see in Iraq because its internal legal structure was removed without providing a functional alternative. History shows -to me- that even an evil dictator is better than that. That doesn't mean people shouldn't try to aim higher. Higher than accepting even a benevolent dictator. So in my case the question becomes if I would be willing to promote the interests of some group that doesn't represent me, for a chance that I may comply with their objectives, which I cannot influence. I'd say: No I don't want to do that, although I also wouldn't go out of my way in order to *not* comply. Thanks for clearing it all up. Have a nice life. A. -- http://mail.python.org/mailman/listinfo/python-list
Re: KOREAN MOON revolves around BUSH
Global Warning, an *anonymous* article in an old issue of *National Review*, the so-called conservative mag of the grotesque Establishment creature, William Buckley, was a sort of benignly-spun expose of the Mont Pelerin Society, the vehicle of British imperialist free trade, free beer free dumb, whose many rightwing affiliate foundations are always in the news. the universally-newspaper-lauded-when- he-died founding president, Mitlon Friedman, used Sir Henry of Kiss.Ass. to conduct their first experiment in Chile, with the help of Augusto Pinochet Dick Nixon. (the fact that it was an awful failure, with the privatization of Chile's social security, was only recently mention, but only before Uncly Milty died.) I realized, much later, since it was anonymous, that it was probably taken from The Holy Spook Economist, but I haven't checked that hypothesis. yes, Warning was meant to evoke warming, although nowhere mentioned in the article, as I recall; can you say, emmissions trading schemes, Boys and Girl? can you say, hedge funds on out-of-the-way desert islands? Just Desserts Island thus: Kucinich is reportedly presenting a bill of impeachment for Trickier Dick Cheeny, today, which may be augmented by some rules of Congress via the state of Vermont. now is the time to make him resign! if you are not a PC Democrat, ask me, How?, in person. if you are not a PC Republican, please, tell the others of the meaning of the word, republic! why do Dick, Borat, Osama, Harry P., Rumsfeld and Tony B. want us to underwrite the 3rd British Invasion of Sudan, so badly? which are really fictional British characters? whwat is the role of the Prime Minister in the Muggles government, and who is he said to be by The Holy Economist? anyway, Bertrand Russel published a jeremyad in the Bulletin of the Atomic Scientists, while the USA was the only thermonukey power, that we should bomb them into the Stone Age; that's your British pacifist, whether before or after he went nuts because of Godel's proof. thus: if you can't prove that all Fermat numbers are pairwise coprime, again! Darfur 'Mini-Summit' http://www.larouchepub.com/other/1998/rice_2546.html thus: uh yeah; Borat wants you in Sudan, why, Baby?... Harry Potter wants you in Iran -- yeah, Baby; shag'US with a spoon? --DARFURIA CONSISTS OF ARABs nonARABs; NEWS-ITEM: we are marching to Darfuria, Darfuria, Darfuria! Harry Potter IIX, ?Ordeal @ Oxford//Sudan ^ Aircraft Carrier! http://larouchepub.com/other/2007/3410caymans_hedges.html ALgoreTHEmovieFORpresident.COM: http://larouchepub.com/eirtoc/site_packages/2007/al_gore.html? -- http://mail.python.org/mailman/listinfo/python-list
Re: Python not giving free memory back to the os get's me in real problems ...
Donald 'Paddy' McCarthy [EMAIL PROTECTED] wrote Could you split the program into one handling the outer loop and calling another program, with data transfer, to handle the inner loops? - Paddy. I'm afraid this isn't possible, because the python macro is called and started from within our commercial tool which leads to the cirumstance that this tool eats up more and more memory. Due to the fact that there is no way we can start the tool via commandline giving an argument that tells the tool it has to start macroXY.py after startup I don't see a way to lower the memory usage by splitting it up in two loops. thanks for all your help so far, tim -- http://mail.python.org/mailman/listinfo/python-list
Re: script for seconds in given month?
ed I, unfortunately, failed to realize the actual platform the script ed is for is IronPython. When trying to import calendar in IronPython, ed I get: ed SyntaxError: future feature is not defined: with_statement ed (c:\Python25\Lib\calendar.py, line 8) So try the 2.4 version of calendar.py... Skip -- http://mail.python.org/mailman/listinfo/python-list
conditional print statement ?
hello, As part of a procedure I've a number sequences like this: Python if Print_Info: print Datafile.readline() else:Datafile.readline() /Python Is there a more compressed way to write such a statement, especially I dislike the redundancy Datafile.readline(). thanks, Stef Mientki -- http://mail.python.org/mailman/listinfo/python-list
Re: conditional print statement ?
Stef Mientki schrieb: hello, As part of a procedure I've a number sequences like this: Python if Print_Info: print Datafile.readline() else:Datafile.readline() /Python Is there a more compressed way to write such a statement, especially I dislike the redundancy Datafile.readline(). d=Datafile.readline() if Print_info: print d It's still two lines, but only has a single call to .readline(). HTH, Martin -- http://mail.python.org/mailman/listinfo/python-list
bitwise shift?
I have found a code example with this loop. for k in range(10, 25): n = 1 k; I have never read Python before but is it correct that 1 get multiplied with the numbers 10,11,12,12,...,25 assuming that 1 k means 1 shift left by k which is the same as multiplying with k. -- http://mail.python.org/mailman/listinfo/python-list
Embedding Matplotlib in wxpython wx.Panel problem
Hi, I'm trying to create a small GUI program where I can do plots using Matplotlib. I've been trying to borrow code from the examples at the matplotlib website, but I can't get it to work. I want to be able to create a wx.Panel that contains an axis for plotting. Around it i want other panels containing various settings, buttons etc. to control the plot. So far I can't even get the program to actually show a plot in a panel. Does anyone here have experience in making a wxpython GUI with matplotlib? Any help would be appreciated! Thanks, Soren My code shows a frame, and I'm trying to set up two panels.. one with a plot and one with a button.. The plotpanel is just a little square in the corner when I run it.. ??? My code is as follows: import wx import pylab from matplotlib.numerix import arange, sin, cos, pi import matplotlib matplotlib.use('WXAgg') from matplotlib.backends.backend_wxagg import FigureCanvasWxAgg from matplotlib.backends.backend_wx import NavigationToolbar2Wx from matplotlib.figure import Figure matplotlib.interactive(False) class App(wx.App): def OnInit(self): self.frame = MainFrame(Autoplotter, (50,60), (700,700)) self.frame.Show() return True class MainFrame(wx.Frame): def __init__(self, title, pos, size): wx.Frame.__init__(self, None, -1, title, pos, size) pPanel = PlotPanel(self, -1)# Plot panel bPanel = ButtonPanel(self, 100,500, (200,100))# button panel sizer = wx.BoxSizer(wx.VERTICAL) sizer.Add(pPanel,0) sizer.Add(bPanel,0) self.SetSizer(sizer) class ButtonPanel(wx.Panel): def __init__(self, Parent, xPos, yPos, insize): pos = (xPos, yPos) wx.Panel.__init__(self, Parent, -1, pos, style = wx.RAISED_BORDER, size = insize) button = wx.Button(self, -1, 'HELLO!!', (10,10), (150,50)) class NoRepaintCanvas(FigureCanvasWxAgg): We subclass FigureCanvasWxAgg, overriding the _onPaint method, so that the draw method is only called for the first two paint events. After that, the canvas will only be redrawn when it is resized. def __init__(self, *args, **kwargs): FigureCanvasWxAgg.__init__(self, *args, **kwargs) self._drawn = 0 def _onPaint(self, evt): Called when wxPaintEvt is generated if not self._isRealized: self.realize() if self._drawn 2: self.draw(repaint = False) self._drawn += 1 self.gui_repaint(drawDC=wx.PaintDC(self)) class PlotPanel(wx.Panel): def __init__(self, parent, id = -1, color = None,\ dpi = None, style = wx.NO_FULL_REPAINT_ON_RESIZE, **kwargs): wx.Panel.__init__(self, parent, id = id, style = style, **kwargs) self.figure = Figure(None, dpi) self.canvas = NoRepaintCanvas(self, -1, self.figure) self._resizeflag = True self.Bind(wx.EVT_IDLE, self._onIdle) self.Bind(wx.EVT_SIZE, self._onSize) self._SetSize() def draw(self): # just draw something! if not hasattr(self, 'subplot'): self.subplot = self.figure.add_subplot(111) theta = arange(0, 45*2*pi, 0.02) rad = (0.8*theta/(2*pi)+1) r = rad*(8 + sin(theta*7+rad/1.8)) x = r*cos(theta) y = r*sin(theta) #Now draw it self.subplot.plot(x,y, '-r') def _onSize(self, event): self._resizeflag = True def _onIdle(self, evt): if self._resizeflag: self._resizeflag = False self._SetSize() self.draw() def _SetSize(self, pixels = None): This method can be called to force the Plot to be a desired size, which defaults to the ClientSize of the panel if not pixels: pixels = self.GetClientSize() self.canvas.SetSize(pixels) self.figure.set_figsize_inches(pixels[0]/ self.figure.get_dpi(), pixels[1]/self.figure.get_dpi()) if __name__ == __main__: app = App(0) app.MainLoop() -- http://mail.python.org/mailman/listinfo/python-list
Re: bitwise shift?
desktop wrote: I have found a code example with this loop. for k in range(10, 25): n = 1 k; I have never read Python before but is it correct that 1 get multiplied with the numbers 10,11,12,12,...,25 No. assuming that 1 k means 1 shift left by k Yes. which is the same as multiplying with k. No. Try starting the Python interpreter and entering 1 10. -- Michael Hoffman -- http://mail.python.org/mailman/listinfo/python-list
Re: getting scancodes
On Apr 23, 8:39 pm, [EMAIL PROTECTED] wrote: Anyone knows if its possible to get scan codes ??? I tried with getch () but with no success, just keycodes. May be using the something in the sys.stdin module ?? is this what you're looking for? http://cheeseshop.python.org/pypi/sysio/1.0 and sys.stdin isn't a module. it's a file. -- http://mail.python.org/mailman/listinfo/python-list