Re: Mysql class works like php
Bruno Desthuilliers wrote: > Andrey a écrit : >> Hi >> >> just a quick question about using MySQL module... are there any api / >> class available to give a higher level in working with Mysql in python? >> such as >> db.fetch_array(), >> db.fetch_rows(), >> db.query(), >> for eachrow in db.fetch_array(): >> > > You really find this "higher level" than Python's db-api ??? > >> just as easy as PHP? > > D'oh :( > > > // PHP: > // suppose we have a valid $connection > $q = mysql_query("select * from yaddayadda", $connection) > if (is_resource($q)) { > while($row = mysql_fetc_row($q)) { > do_something_with($row); > } > mysql_free($q); > } > else { > // handle the error here > } > > # python: > # suppose we have a valid connection > cursor = connection.cursor() # can specify the kind of cursor here > try: > cursor.execute("select * from yaddayadda") > except MysqlError, e: > # handle error here > else: > for row in cursor: > do_something_with(row) > > # not strictly necessary, you can reuse the same > # cursor for another query > cursor.close() > > > As far as I'm concerned, I fail to see how PHP is "higher level" or > "easier" here. > > Maybe You should look into sqlalchemy. I am also a newbie at that, but it allows you to do things like this (untested): sqltxt="""select * from mytable""" result=mysession.execute(sqltxt) for r in result.fetchmany(): which pretty good mimics the 'for eachrow in db.fetch_array():' yours politely jorgen -- http://mail.python.org/mailman/listinfo/python-list
Re: readline support on openSuSE
Milos Prudek wrote: > This question concerns compilation of Python from sources. Specifically > Python > 2.3.6. > > On Kubuntu 7.04, ./configure outputs these lines about readline: > checking for rl_pre_input_hook in -lreadline... yes > checking for rl_completion_matches in -lreadline... yes > > On openSuSE 10.3, ./configure outputs these lines about readline: > checking for rl_pre_input_hook in -lreadline... no > checking for rl_completion_matches in -lreadline... no > > And, of course, line editing in Python shell is possible on Kubuntu and > impossible on openSuSE. > > I do have libreadline5 and readline-devel RPM installed on openSuSE. What > else > might I need to have readline support? > This is not an answer but I have 10.3 installed, and I found that a lot of my (not python-) compiling troubles went away after installing 'a lot' from the development patterns presented by yast. I am so demented that I tend not to get the dependencies straight when installing from the 'personal memory';-) kind retards jorgen / de mente something completely different: myspace.com/dementedk -- http://mail.python.org/mailman/listinfo/python-list
regular expression
I just can't seem to get it: I was having some trouble with finding the first > > """ print "The First approach - flags in finditer" rex = re.compile(r'^<(?P[a-zA-Z0-9_]*)') for i in rex.finditer(TESTTXT,re.MULTILINE): print i,i.groups() print "The Second approach - flags in pattern " rex = re.compile(r'(?m)^<(?P[a-zA-Z0-9_]*)') for i in rex.finditer(TESTTXT): print i,i.groups() -- http://mail.python.org/mailman/listinfo/python-list
Re: regular expression
Ups - got it - there are no flags in finditer;-) So rtfm, once again, jorgen! gardsted wrote: > I just can't seem to get it: > I was having some trouble with finding the first following with this regex: > > Should these two approaches behave similarly? > I used hours before I found the second one, > but then again, I'm not so smart...: > > kind retards > jorgen / de mente > using python 2.5.1 > --- > import re > > TESTTXT="""SAMPLES "" "" > > >MAINSEND 1 >ACT 1 > > >ACT 1 > > > > > > > """ > print "The First approach - flags in finditer" > rex = re.compile(r'^<(?P[a-zA-Z0-9_]*)') > for i in rex.finditer(TESTTXT,re.MULTILINE): > print i,i.groups() > > print "The Second approach - flags in pattern " > rex = re.compile(r'(?m)^<(?P[a-zA-Z0-9_]*)') > for i in rex.finditer(TESTTXT): > print i,i.groups() -- http://mail.python.org/mailman/listinfo/python-list
Re: regular expression
The retarded cousin - that's me! I keep getting confused by the caret - sometimes it works - sometimes it's better with backslash-n Yes - retarded cousin, I guess. The file format is a config-track for a multitrack recording software, which i need to automate a bit. I can start it from the command line and have it create a remix (using various vst and other effects) Sometimes, however, we may have deleted the 'guitar.wav' and thus have to leave out that track from the config-file or the rendering won't work. Since it seems 'whitespace matters' in the file I have the following code to get me a tag: I cost me a broken cup and coffee all over the the kitchen tiles - temper! I still don't understand why I have to use \n instead of ^ af the start of TAGCONTENTS and TAGEND. But I can live with it! Thank you for your kind and humorous help! kind retards jorgen / de mente www.myspace.com/dementedk import re TESTTXT=open('003autoreaper.rpp').read() # whole file now def getLevel(levl): rex = re.compile( r'(?m)'# multiline r'(?P^ {%d}[<])' # the < character r'(?P[a-zA-Z0-9_]*)' # the tagname r'(?P[\S \t]*?$)' # the rest of the tagstart line r'(?P(\n {%d}[^>][\S \t]*$){0,})' # all the data coming before the > r'(?P\n {%d}>[\S \t]*$)' %(levl,levl,levl) # the > character ) return rex for i in getLevel(2).finditer(TESTTXT): myMatch = i.groupdict() print i.group('TAGNAME'),i.start('TAGSTART'), i.end('TAGEND') #print i.groups() if myMatch['TAGNAME'] == 'TRACK': #print i.groups() for j in getLevel(6).finditer(TESTTXT,i.start('TAGSTART'), i.end('TAGEND')): myMatch2 = j.groupdict() #print j.groups() print j.group('TAGNAME'),j.start('TAGSTART'), j.end('TAGEND') if myMatch2['TAGNAME'] == 'SOURCE': for m in myMatch2: print m, myMatch2[m] -- http://mail.python.org/mailman/listinfo/python-list
Re: regular expression
Paul McGuire wrote: > Sorry about your coffee cup! Would you be interested in a pyparsing > rendition? > > -- Paul > > > from pyparsing import * > > def defineGrammar(): > ParserElement.setDefaultWhitespaceChars(" \t") > > ident = Word(alphanums+"_") > LT,GT = map(Suppress,"<>") > NL = LineEnd().suppress() > > real = Word(nums,nums+".") > integer = Word(nums) > quotedString = QuotedString('"') > > dataValue = real | integer | Word(alphas,alphanums) | quotedString > dataDef = ident + ZeroOrMore(dataValue) + NL > tagDef = Forward() > tagDef << LT + ident + ZeroOrMore(dataValue) + NL + \ > Dict(ZeroOrMore(Group(dataDef) | Group(tagDef))) + GT + NL > tagData = Dict(OneOrMore(Group(tagDef))) > return tagData > > results = defineGrammar().parseString(TESTTXT) > print( results.dump() ) > print results.REAPER_PROJECT.TRACK.keys() > print results.REAPER_PROJECT.TRACK.PANENV2 > print results.REAPER_PROJECT.TRACK.PANENV2.ACT > > > prints out: > > [['REAPER_PROJECT', '0.1', ['METRONOME', '6', '2.00', ['SAMPLES', > '', '']], ['TRACK', ['MAINSEND', '1'], ['VOLENV2', ['ACT', '1']], > ['PANENV2', ['ACT', '1'] > - REAPER_PROJECT: ['0.1', ['METRONOME', '6', '2.00', ['SAMPLES', > '', '']], ['TRACK', ['MAINSEND', '1'], ['VOLENV2', ['ACT', '1']], > ['PANENV2', ['ACT', '1' > - METRONOME: ['6', '2.00', ['SAMPLES', '', '']] > - SAMPLES: ['', ''] > - TRACK: [['MAINSEND', '1'], ['VOLENV2', ['ACT', '1']], ['PANENV2', > ['ACT', '1']]] > - MAINSEND: 1 > - PANENV2: [['ACT', '1']] > - ACT: 1 > - VOLENV2: [['ACT', '1']] > - ACT: 1 > ['PANENV2', 'MAINSEND', 'VOLENV2'] > [['ACT', '1']] > 1 Thank You Paul - I am very interested. In between drinking coffee and smashing coffee cups, I actually visited your site and my impression was: wow, If I could only take the time instead of struggling with this 'almost there' re thing! I am not that good at it actually, but working hard, not worrying about the cups to much... I will now revisit pyparsing and learn! I cheated a bit on you and read this: http://www.oreillynet.com/pub/au/2557. I live in a little danish town, Svendborg, nice by the sea and all. I learned steel construction in the 80's at the local shipyard, (now closed), much later (96-98) I received a very short education in IT-skills on a business school in Odense, the nearest city. I spent the years 98-05 working for Maersk Data, later IBM. From 05 and onwards independent. Struggling hard to keep orders at a bare minimum, I spend some of my spare time working with the elderly, and some of it programming python for different purposes at home, and some of it playing in the band: http://myspace.com/dementedk, and some of it combining the two. So now You know more or less the same about me as I know about You. Jorgen -- http://mail.python.org/mailman/listinfo/python-list
Re: Check file is
Harish wrote: Hi Friends Is there any utility in python which will help me to read any pdf files? Regards Harish Not sure, what you're after exactly, but I tried googling 'python read pdf' and found this, so maybe 'reportlab' is what you're looking for: Re: Reading PDF files #2 Dec 20th, 2006 To read and manage Portable Document Files you can use the open source ReportLab toolkit (written in Python) from: http://www.reportlab.org/rl_toolkit.html kind regards jorgen -- http://mail.python.org/mailman/listinfo/python-list
Re: How to make money with Python!
Grant Edwards wrote: On 2008-10-31, Duncan Booth <[EMAIL PROTECTED]> wrote: If that subject line didn't trip everyone's killfiles, see http://pythonide.blogspot.com/2008/10/how-to-make-money-with-free-software.html for a fantastic story involving Python. Doh! The very clever pun went right past me several times before I finally caught on (with some help from a poster on /.) beautiful work of art -- http://mail.python.org/mailman/listinfo/python-list