Re: [Tutor] Open Source database software
Mike Meisner [EMAIL PROTECTED] wrote I'd like to get away from using Microsoft Access. I have a number of Access databases to convert. The obvious choice would be the OpenOffice DB. I believe it can read Access format - although I've never tried... 1. A relational database management system for a single user (i.e, I don't need client/server and all the extra baggage A server based RDBMS is not a lot of extra baggage, especially small ones like Firebird but if you really don't want a server solution then SQLite which comes with Python is file based and good enough for anything but enormous databases. 3. A good GUI front end for creating the database, creating forms for user data input, queries, reports, etc. With opensource the GUI tends to be an add on so you get a separate choice over which front end you want. Personally I don't ever use them so can make no comment, I prefer SQL. Smart enough to easily read and convert an Access (.mdb) database file. THat is likely to be another tool too. Apart from OpenOffice I don't think the databases typically feature conversion tools. everything either in Python or with APIs that Python can easily use. Again SQLite is the obvious choice here but most databases can be accessed from Python via the standard DBAPI and a suitable driver.. HTH, -- Alan Gauld Author of the Learn to Program web site http://www.freenetpages.co.uk/hp/alan.gauld ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] Open Source database software
On Mon, Nov 24, 2008 at 7:19 PM, Mike Meisner [EMAIL PROTECTED] wrote: 3. A good GUI front end for creating the database, creating forms for user data input, queries, reports, etc. For this you might look at Dabo: http://dabodev.com/ I haven't worked with it myself but some people like it a lot. PostgreSQL has pgAdmin which is very nice for basic admin but not for user applications. Kent ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
[Tutor] [Fwd: Re: My horrible looking program needs improvement.]
Hello Peter, Your program's structure is rather well designed... with words and whitespace. You just need to export each consistent part of your main() into a specialised section: module, object, function. I would suggest (use the names that make sense for you, not mine): * Config class that copes with *all* config. ~ read/store to attributes 'period' args ~ read/store ini file 'access' params ~ ... * AccessData class that copes with data -- central thing -- uses config ~ read/store spam ~ read/store htaccess list ~ sort ~ update access list ~ ... * function to output results -- uses data I do not have enough time to help you and properly shape these objects. Still, the AccessData class may look like that. class AccessData(object): ''' blah blah ''' def __init__(self): read (old) recorded data from file possibly init other data attributes def update(): ''' this method only if process is always purely sequential identical -- then may also contain init actions''' self.read_spam(self) self.read_htaccess(self) self.sorted(self) self.updated(self) self.write_to_file def read_spam(self): ... store on attribute def read_htaccess(self): ... store on attribute def sorted(self): ... return sorted def updated(self): ... return updated? def write_to_file(self): ... And main() could be (not more!): def main(): ''' blah ''' # config config = Config() config.read_args() # from command line/ optparse config.get_access() # from ini file /ConfigParser # update access data # uses params from config access_data=AccessData() access_data.update() # output: from access_data to ... output() Possibly some of the above proposal is wrong or not the best appropriate -- I did it fast --, then adapt to reality and your taste. I'm rather surprised that you are able to cope with such complicated problem as web access, and not to properly structure your code. Feel free to ask the list for more help on what a class is, or what it is intended for. And why it seems appropriate such alien things in the case of you present code. denis Ps: Are you dutch? ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
[Tutor] Leaving PHP for Python
Hello All, This is my first message on the mailing list. I am excited to get started developing content / backend for the web with Python. I have a background in PHP, but am convinced that Python is a better, more powerful language. I am on a Windows XP machine and I have been using XAMPP for server, php, mysql... I installed Python 2.5 and mod_python successfully. I can serve pages with .py extension to http://localhost . The following for example: from mod_python import apache def handler(req): req.write(Hello World!) return apache.OK Frankly, I don't understand what is going on in the above. This is a bit different compared to what I am used to. So, my question, would you all please point me to some introductory resources, tutorials, books, that focus on Python programming for the web? I am eventually going to interface with some web services, notably Amazon Web Services. Also, I'd like to write some server side scripts to serve as a backend to some Adobe AIR apps. Any and all advice is extremely appreciated. Thanks for your time! Sincerely, Jason ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] My horrible looking program needs improvement.
On Tue, 25 Nov 2008 13:04:35 +0100 spir [EMAIL PROTECTED] wrote: Hello Peter, Your program's structure is rather well designed... with words and whitespace. You just need to export each consistent part of your main() into a specialised section: module, object, function. I would suggest (use the names that make sense for you, not mine): * Config class that copes with *all* config. ~ read/store to attributes 'period' args ~ read/store ini file 'access' params ~ ... * AccessData class that copes with data -- central thing -- uses config ~ read/store spam ~ read/store htaccess list ~ sort ~ update access list ~ ... * function to output results -- uses data I do not have enough time to help you and properly shape these objects. Still, the AccessData class may look like that. class AccessData(object): ''' blah blah ''' def __init__(self): read (old) recorded data from file possibly init other data attributes def update(): ''' this method only if process is always purely sequential identical -- then may also contain init actions''' self.read_spam(self) self.read_htaccess(self) self.sorted(self) self.updated(self) self.write_to_file def read_spam(self): ... store on attribute def read_htaccess(self): ... store on attribute def sorted(self): ... return sorted def updated(self): ... return updated? def write_to_file(self): ... And main() could be (not more!): def main(): ''' blah ''' # config config = Config() config.read_args() # from command line/ optparse config.get_access() # from ini file /ConfigParser # update access data # uses params from config access_data=AccessData() access_data.update() # output: from access_data to ... output() Possibly some of the above proposal is wrong or not the best appropriate -- I did it fast -- adapt to reality and your taste. I'm rather surprised that you are able to cope with such complicated problem as web access, and not to properly structure your code. denis Ps: Are you dutch? Thanks Denis, Those are the kind of pointers I was looking for. I wasn't expecting somebody to hand me the solution on a silver platter, as a matter of fact I prefer not to. The structure is more complicated, IMHO, as finding and writing a solution. For me programming is like a spoken language. When learning a new language you learn the words and the basics of the grammar. The Internet is full of dictionaries (programming language reference guides), giving explanations of what functions do but to get to know the grammar you'll have to read good written programs or ask for advice :) because there aren't a lot, if any, sites out there that teach you the grammar. Right now the program is a book for children, the grammar is easy. I prefer to write a bit more complex grammar because if I ever decide to write a bigger program, the kids grammar won't work anymore. Oh and yes I am Dutch, currently living in the US. -- Peter van der Does GPG key: E77E8E98 WordPress Plugin Developer http://blog.avirtualhome.com GetDeb Package Builder/GetDeb Site Coder http://www.getdeb.net - Software you want for Ubuntu signature.asc Description: PGP signature ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] Leaving PHP for Python
Welcome! I suggest you take a look at django [1]. You'll find that it has documentation [2] and an active developer community [3]. Of course, for your questions about learning python, you've already found a very helpful community : ) Take care, Don [1] http://www.djangoproject.com/ [2] http://docs.djangoproject.com/en/dev/ [3] http://www.djangoproject.com/community/ On 11/25/08, Jason DeBord [EMAIL PROTECTED] wrote: Hello All, This is my first message on the mailing list. I am excited to get started developing content / backend for the web with Python. I have a background in PHP, but am convinced that Python is a better, more powerful language. I am on a Windows XP machine and I have been using XAMPP for server, php, mysql... I installed Python 2.5 and mod_python successfully. I can serve pages with .py extension to http://localhost . The following for example: from mod_python import apache def handler(req): req.write(Hello World!) return apache.OK Frankly, I don't understand what is going on in the above. This is a bit different compared to what I am used to. So, my question, would you all please point me to some introductory resources, tutorials, books, that focus on Python programming for the web? I am eventually going to interface with some web services, notably Amazon Web Services. Also, I'd like to write some server side scripts to serve as a backend to some Adobe AIR apps. Any and all advice is extremely appreciated. Thanks for your time! Sincerely, Jason ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] Leaving PHP for Python
Jason DeBord wrote: Hello All, This is my first message on the mailing list. I am excited to get started developing content / backend for the web with Python. I have a background in PHP, but am convinced that Python is a better, more powerful language. I am on a Windows XP machine and I have been using XAMPP for server, php, mysql... I installed Python 2.5 and mod_python successfully. I can serve pages with .py extension to http://localhost . The following for example: from mod_python import apache def handler(req): req.write(Hello World!) return apache.OK Frankly, I don't understand what is going on in the above. Exactly what don't you understand. Or ... what DO you understand. There is a lot to explain here. Narrowing it down will make it easier. -- Bob Gailer Chapel Hill NC 919-636-4239 ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] Leaving PHP for Python
On Tue, Nov 25, 2008 at 7:43 AM, Jason DeBord [EMAIL PROTECTED] wrote: The following for example: from mod_python import apache def handler(req): req.write(Hello World!) return apache.OK Frankly, I don't understand what is going on in the above. This is a bit different compared to what I am used to. So, my question, would you all please point me to some introductory resources, tutorials, books, that focus on Python programming for the web? You might start with some general Python tutorials. Try one of these lists, depending on your background: http://wiki.python.org/moin/BeginnersGuide/NonProgrammers http://wiki.python.org/moin/BeginnersGuide/Programmers Presumably you have found the mod_python docs? It has a tutorial also: http://www.modpython.org/live/current/doc-html/ You don't say why you chose mod_python...you should know that writing directly to mod_python is not the most popular method of writing Python web apps. It is fine for something simple but for complex apps you might want to look at one of the Python web frameworks such as Django, TurboGears or web.py. Kent ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] Leaving PHP for Python
On Tue, Nov 25, 2008 at 6:43 AM, Jason DeBord [EMAIL PROTECTED] wrote: The following for example: from mod_python import apache def handler(req): req.write(Hello World!) return apache.OK Frankly, I don't understand what is going on in the above. This is a bit different compared to what I am used to. I don't know if you did much OOP (Object Oriented Programming) in PHP, or anything else, but that's what python does, and does well. There are some tutorials out there that explain what objects really are... but I read somewhere that in python /everything/ is an object, and that's pretty much true to my experience. The line starting with from is similar to an include statement in php. Though what you're doing is including apache that happens to be inside the mod_python library. The next line: def means you're defining a function (or method, if it's in a class, where it would be def handler(self, req), but that's another story) handler is the name you're calling the function and req is the name of your argument. At this point, it really doesn't matter what req is... it's just a name that will point to (or become a copy of) whatever you pass to it. In this case, you're passing it a class that has the method write. Consider this example(I'm using the IPython active interpreter, so you see In instead of ): In [15]: class foo: : def write(self, mystr): : print mystr : : In [17]: def handler(req): : req.write(Hello World!) : : In [18]: x = foo() In [19]: handler(x) Hello World! And then return apache.OK is returning... well, the object OK in the apache class. Of course, I've never used mod_python/apache, that's just me applying what I know about python, so I may not be 100% accurate, but I don't think I'm too far off. So, my question, would you all please point me to some introductory resources, tutorials, books, that focus on Python programming for the web? I am eventually going to interface with some web services, notably Amazon Web Services. Also, I'd like to write some server side scripts to serve as a backend to some Adobe AIR apps. If you plan on doing much command line/admin type stuff, I'd recommend Python for Unix and Linux System Adminstration by Noah Gift Jeremy M. Jones, available through O'Reilly, at least as one resource (ISBN: 978-0-596-51582-9) Noah spoke at our un-conference in October, and I learned a lot, hence, my recommendation. It does a great job of throwing you into a lot of various administration tasks, which instruction can be applied to (and is also useful for) many other tasks. Definitely check out the links others have provided, they'll be packed full of helpful information, and I hope this helped as well. -Wayne ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
[Tutor] accessing list from a string
I have a list in a text file that is in the python format., Positions = [2.5,2.8] and would like to grab the values. for line in file('list.txt'): if line == Positions: x1,x2=Positions I know this does not work. Is there a direct way to get my x1 and x2 values. Thanks, Bryan ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] accessing list from a string
Bryan Fodness [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] I have a list in a text file that is in the python format., Positions = [2.5,2.8] and would like to grab the values. for line in file('list.txt'): if line == Positions: x1,x2=Positions I know this does not work. Is there a direct way to get my x1 and x2 values. line = '[2.5,2.8]' x1,x2 = eval(line) x1,x2 (2.5, 2.7998) -Mark ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] accessing list from a string
Bryan Fodness wrote: I have a list in a text file that is in the python format., Positions = [2.5,2.8] Why do you use Python format for storing data? (Python format is for storing programs, usually) and would like to grab the values. for line in file('list.txt'): if line == Positions: x1,x2=Positions I know this does not work. Is there a direct way to get my x1 and x2 values. You can import the Python file, then get the value of Positions. import myfile print myfile.Positions You can read the lines from the file, and use regular expression matching to extract the values. That however brings problems like 'what to do when there are more such lines', or 'what to do if there are 3 numbers instead of 2' In general, it is much easier to use a different file format for storing such information, eg you could use a .ini file format instead, and use the ConfigParser module to load it. Sincerely, Albert ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] Open Source database software
On Mon, Nov 24, 2008 at 4:19 PM, Mike Meisner [EMAIL PROTECTED] wrote: I'd like to get away from using Microsoft Access. I have a number of Access databases to convert. There's an open source package out there called mdbtools, specifically for working with Access databases. The Python port (or wrapper? I don't really know) of it can be found here: http://www.parit.ca/software/pscproject.2008-04-21.9636009485 I've never used it, so don't know whether it would be a stable long-term way to work with MDB files, or whether it would be best to write a one-time conversion to a different format... -- www.fsrtechnologies.com ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] python question
On Tue, Nov 25, 2008 at 11:52 AM, Daniel J Kramer [EMAIL PROTECTED] wrote: Hi Kent I have been playing with the ,lower command and am not having much luck. It seems like a simple task, but it is not working for me. Here is the code def main(): score = 0 printWelcome to the Music Quiz. Today's game has 8 rounds for you. There will be audio rounds, visual rounds and straight ahead qustions. We will begin with the round Journey to the Centre of New York print A11 = raw_input (We see the Ramones on the Bowery with rolled up towels under their arms chewing out a rhythm on their bubble gum. Where are they planning to hitch a ride? ) A11 = A11.lower() A11 now contains all lowercase characters. if A11 == Rockaway Beach : try if A11 == rockaway beach: Kent PS Please use Reply All to reply to the list. score += 5 print Correct elif A11 == CBGB : print That's where they are, not where they are going else: print Wrong, they all hitched a ride to Rockaway Beach print Your total score , score main() Is the placement of the .lower function in the wrong place? When I run the code, the program does not recognize my input and will not give me a score. This happens even if I enter text with capitals. When I remove the .lower function Python recognizes my answer, but only if it has capitals. any suggestions? cheers Daniel ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] python question
Hi Kent got it! Is it because Python must recognize the answer as lower case? sorry if that might seem like a dumb question, but I am looking to understand this program. cheers Daniel On Tue, Nov 25, 2008 at 12:38 PM, Kent Johnson [EMAIL PROTECTED] wrote: On Tue, Nov 25, 2008 at 11:52 AM, Daniel J Kramer [EMAIL PROTECTED] wrote: Hi Kent I have been playing with the ,lower command and am not having much luck. It seems like a simple task, but it is not working for me. Here is the code def main(): score = 0 printWelcome to the Music Quiz. Today's game has 8 rounds for you. There will be audio rounds, visual rounds and straight ahead qustions. We will begin with the round Journey to the Centre of New York print A11 = raw_input (We see the Ramones on the Bowery with rolled up towels under their arms chewing out a rhythm on their bubble gum. Where are they planning to hitch a ride? ) A11 = A11.lower() A11 now contains all lowercase characters. if A11 == Rockaway Beach : try if A11 == rockaway beach: Kent PS Please use Reply All to reply to the list. score += 5 print Correct elif A11 == CBGB : print That's where they are, not where they are going else: print Wrong, they all hitched a ride to Rockaway Beach print Your total score , score main() Is the placement of the .lower function in the wrong place? When I run the code, the program does not recognize my input and will not give me a score. This happens even if I enter text with capitals. When I remove the .lower function Python recognizes my answer, but only if it has capitals. any suggestions? cheers Daniel -- Daniel J Kramer Constant Fables 249 12th st #3 Brooklyn, NY 11215 (h) 347 223 4571 (m) 646 427 7430 ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] python question
On Tue, Nov 25, 2008 at 12:45 PM, Daniel J Kramer [EMAIL PROTECTED] wrote: Hi Kent got it! Is it because Python must recognize the answer as lower case? It's because you change the user input to lower case, so you have to compare it against a lower case answer. Maybe this helps: In [1]: s=Abc In [2]: s.lower() Out[2]: 'abc' In [3]: s.lower() == Abc Out[3]: False In [4]: s.lower() == abc Out[4]: True Kent ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] accessing list from a string
On Tue, 25 Nov 2008 06:59:13 -0800, Mark Tolonen wrote: Bryan Fodness [EMAIL PROTECTED] wrote in message news:[EMAIL PROTECTED] I have a list in a text file that is in the python format., Positions = [2.5,2.8] and would like to grab the values. for line in file('list.txt'): if line == Positions: x1,x2=Positions I know this does not work. Is there a direct way to get my x1 and x2 values. line = '[2.5,2.8]' x1,x2 = eval(line) x1,x2 (2.5, 2.7998) Don't give recommendations on eval without mentioning its danger. eval can execute anything a python statement can, and that includes dangerous statements that can be of security risk. Instead, in python 2.6, you may use ast.literal_eval(). Which restrict the eval to literal syntax only, and prohibit any function calling. Alternatively, for previous versions of python, or for more flexibility, you may use the safeeval like here: http://lybniz2.sourceforge.net/ safeeval.html ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
[Tutor] Python GIL
Hi all, I wish to find out what the Global Interpreter Lock is and its relevance regarding the serving of high traffic Python sites. My understanding from what i read is that its a state whereby only one interpreter can be invoked on a physical machine. How does this impact performance of web apps that receive a high rate of requests? Do scripts wait in some marshalled queue for a certain period until their turn to be interpreted, or can multiple simultaneous requests be processed in parallel by the Python interpreter? Please clear my confusion regarding this topic. Any explanation would be appreciated. Best regards, -- Lloyd Dube ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] Leaving PHP for Python
You might also want to look at Pylons...its another excellent web framework built for Python. The community around it, I feel, is better than Django. People are pretty willing to answer any and all questions you have. It gives more control to the developer as oppiosed to Django. I just switched from Django to Pylons...so far it fits me better. Not for everyone...ya know... On Tue, Nov 25, 2008 at 5:43 AM, Jason DeBord [EMAIL PROTECTED] wrote: Hello All, This is my first message on the mailing list. I am excited to get started developing content / backend for the web with Python. I have a background in PHP, but am convinced that Python is a better, more powerful language. I am on a Windows XP machine and I have been using XAMPP for server, php, mysql... I installed Python 2.5 and mod_python successfully. I can serve pages with .py extension to http://localhost . The following for example: from mod_python import apache def handler(req): req.write(Hello World!) return apache.OK Frankly, I don't understand what is going on in the above. This is a bit different compared to what I am used to. So, my question, would you all please point me to some introductory resources, tutorials, books, that focus on Python programming for the web? I am eventually going to interface with some web services, notably Amazon Web Services. Also, I'd like to write some server side scripts to serve as a backend to some Adobe AIR apps. Any and all advice is extremely appreciated. Thanks for your time! Sincerely, Jason ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor -- Spencer Parker ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] Python GIL
Python interpreters running in separate processes have no affect on each other. This is the easiest way to get around the limitations of the GIL. The GIL generally has limited effect on multithreaded applications on a single-core machine. It can be a serious bottleneck on multicore machines, however. Other implementations of Python, such as Jython or IronPython, do not have the GIL and are not subject to these limitations. However, any modules written in C will not be available unless they have been ported. A little poking around with google should tell you more. Cheers On Tuesday 25 November 2008 15:26, OkaMthembo wrote: Hi all, I wish to find out what the Global Interpreter Lock is and its relevance regarding the serving of high traffic Python sites. My understanding from what i read is that its a state whereby only one interpreter can be invoked on a physical machine. How does this impact performance of web apps that receive a high rate of requests? Do scripts wait in some marshalled queue for a certain period until their turn to be interpreted, or can multiple simultaneous requests be processed in parallel by the Python interpreter? Please clear my confusion regarding this topic. Any explanation would be appreciated. Best regards, ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
[Tutor] text file to excel csv file using python programming
Hi People, I tried to look for some answers but I see only same data format processing ( *.txt to *.txt ) in python. my question is how to convert a text file ( e.g. *.log, *.dlg ) to excel *.csv using python programming. any suggestion and where I can get this information for further learning. thanks. best regards, Gilbert ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] text file to excel csv file using python programming
Hi Gilbert, Check out the csv module in python's standard library. It can convert from .txt into Excel and vice versa http://www.python.org/doc/2.5.2/lib/module-csv.html ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] text file to excel csv file using python programming
Hi Serdar, ok thanks for your quick reply. I'll try to check this module. Hi people serdar, in case you have some websites or books you can recoomend that have some sample python codes for converting text files ( e.g. *.dlg, *.log ) to *.csv, kindly share. best regards, Gilbert On Wed, Nov 26, 2008 at 7:21 AM, Serdar Tumgoren [EMAIL PROTECTED]wrote: Hi Gilbert, Check out the csv module in python's standard library. It can convert from .txt into Excel and vice versa http://www.python.org/doc/2.5.2/lib/module-csv.html ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] text file to excel csv file using python programming
Hey Gilbert, The below link leads to a very basic script I put together with some assistance from several of the tutors on this list. It might give you a basic idea on how to use the csv module. http://forjournalists.com/cookbook/index.php?title=Itemizer ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] text file to excel csv file using python programming
Hi Serdar, I will check on this. thanks a lot. best regards, Gilbert On Wed, Nov 26, 2008 at 7:40 AM, Serdar Tumgoren [EMAIL PROTECTED]wrote: Hey Gilbert, The below link leads to a very basic script I put together with some assistance from several of the tutors on this list. It might give you a basic idea on how to use the csv module. http://forjournalists.com/cookbook/index.php?title=Itemizer ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
[Tutor] How to get smooth, terminal-like interaction over the web
I have an idea for a python program I want to write. I want to make this program accessible over the web for people to play with. And that's where I'm stuck -- I don't know what module, framework, protocol, or whatever to use to webify it. It's a simple text-based program, the interaction would work perfectly in a terminal with the computer printing out lines of text to the user, and the user typing in lines of text and pressing return, and this is the kind of interaction I want to enable on a web page. Can anyone point me in the direction I should be looking, if I want to implement this kind of interaction over the net using python? I'm aware of CGI and HTML forms and the python modules for it, but I think that would require the entire page to be reloaded every time there's an input or output. So am I looking at ajax, javascript, etc.? I'm a little bit lost, not knowing what's available out there. I'm looking for simplicity and ease of use for a python programmer. ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] accessing list from a string
Bryan Fodness [EMAIL PROTECTED] wrote I have a list in a text file that is in the python format., Positions = [2.5,2.8] When you say in the Python format do you mean it is real Python codfe or just that it happens to look like Python? If the latter what format is it really? If its a config file then the config parser will extract the string based on the key (positions) for you. But you will still need to convert the string [2.5,2.8] to a list or tuple. You could use eval to evaluate the string but that would be dangerous since the striong could be a malicious piece of code. But you can make it a lot safer by wrapping it in a function with known effect, thus: s = [2.5,2.8] # your string from the file e = tuple( + e + ) x,y = eval(e)# x - 2.5, y - 2.8 Now if some crazy code gets read by error the eval will throw an error. Its not foolproof but it works for all but the most devious attacks. If you don't like that then it's down to parsing the string and I'd suggest a regular expression is best to pull out the numbers unless the string is definitely fixed format/length. HTH, -- Alan Gauld Author of the Learn to Program web site http://www.freenetpages.co.uk/hp/alan.gauld ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] How to get smooth, terminal-like interaction over the web
tchomby [EMAIL PROTECTED] wrote It's a simple text-based program, the interaction would work perfectly in a terminal with the computer printing out lines of text to the user, and the user typing in lines of text and pressing return, and this is the kind of interaction I want to enable on a web page. For small apps I'd suggest biting the bullet and learning JavaScript and coding it in the browser. The next best thing is either a Java applet - which can be written in Jython - or an Ajax application. Both of these have a steepish learning curve which is why I suggest learning JavaScript! the entire page to be reloaded every time there's an input or output. So am I looking at ajax, javascript, etc.? I'm a little bit lost, not knowing what's available out there. Yes I think one of JavaScript, Jython, or Ajax will be best. I believe that Django supports Ajax and I know TurboGears does. If you go the JavaScript route check out Mochikit which makes JS more like Python! HTH, -- Alan Gauld Author of the Learn to Program web site http://www.freenetpages.co.uk/hp/alan.gauld ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] accessing list from a string
On Tue, Nov 25, 2008 at 3:14 PM, Lie Ryan [EMAIL PROTECTED] wrote: Instead, in python 2.6, you may use ast.literal_eval(). Which restrict the eval to literal syntax only, and prohibit any function calling. That's very cool, thanks! Alternatively, for previous versions of python, or for more flexibility, you may use the safeeval like here: http://lybniz2.sourceforge.net/ safeeval.html It looks like it wouldn't be hard to port ast.literal_eval to Python 2.5... Kent ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] accessing list from a string
On 26/11/2008, Alan Gauld [EMAIL PROTECTED] wrote: You could use eval to evaluate the string but that would be dangerous since the striong could be a malicious piece of code. But you can make it a lot safer by wrapping it in a function with known effect, thus: s = [2.5,2.8] # your string from the file e = tuple( + e + ) x,y = eval(e)# x - 2.5, y - 2.8 Now if some crazy code gets read by error the eval will throw an error. Its not foolproof but it works for all but the most devious attacks. If I, as an evildoer, can control e, it seems that I could set it to: ,), __import__('os').system('rm -rf /' I've never thought of myself as all that devious :-) -- John. ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor
Re: [Tutor] text file to excel csv file using python programming
On Tue, Nov 25, 2008 at 6:16 PM, Gilbert [EMAIL PROTECTED] wrote: Hi People, I tried to look for some answers but I see only same data format processing ( *.txt to *.txt ) in python. my question is how to convert a text file ( e.g. *.log, *.dlg ) to excel *.csv using python programming. This kind of program can be pretty simple, depending on the format of your text file. It generally will have the form open input file open output file open csv writer for output file for each line in input: split the line into fields write the fields to the csv writer close input file close output file The real program may not be much longer than that. I really depends on what you need to do with the input lines. Can you show an example? Kent ___ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor