Den 06/01/13 16.12, chaouche yacine skrev:
I'm not confident this would run on gedit. It works on a python
interpreter if you have a file named data.txt in the same directory
containing your sample data.

It surely has to do with how gedit works then, because the "$" sign
isn't used in python, this business should be a gedit convention. And
sorry, I can't help on that, I'm not a user of gedit myself. Fortunately
others have answered and I beleive one of the solutions worked for you.

It does not seem to be the case :-(

Thank you for trying to help.

------------------------------------------------------------------------
*From:* Kurt Hansen <kurt@ugyldig.invalid>
*To:* python-list@python.org
*Sent:* Sunday, January 6, 2013 3:21 PM
*Subject:* Re: How to modify this script?

Den 06/01/13 15.01, chaouche yacine wrote:
 > Well, I'm not answering your question since I am rewriting the script,
 > because I prefer it this way :)
 >
 > def addline(line):
 >      return "<tr>%s</tr>\n" % line
[cut]

I surpose I shall put your code between $< and >?

 > printed
 >
 >  >>> <table>
 > <tr><td colspan='3'>Price table</td></tr>
 > <tr><td>1 </td><td> Green apple </td><td> $1</td></tr>
 > <tr><td>5 </td><td> Green apples </td><td> $4</td></tr>
 > <tr><td>10 </td><td> Green apples </td><td> $7</td></tr>
 > </table>
 >  >>>

Aha, so you tested it yourself?

When running this in Gedit on four lines of tab-separated text the
output is:

%s</tr>\n" % line

def addcolumn(item,nb_columns):
     if nb_columns != 3:
         return "<td colspan='%s'>%s</td>" % (3 - nb_columns + 1, item)
     return "<td>%s</td>" % item

output = "<table>\n"
for line in file("data.txt"):
     items = line.strip().split("\t")
     columns = ""
     for item in items :
         columns += addcolumn(item,len(items))
     output  += addline(columns)


output += "</table>"
print output
 >
-- Venlig hilsen
Kurt Hansen
-- http://mail.python.org/mailman/listinfo/python-list




--
Venlig hilsen
Kurt Hansen
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to