[Zope] DTML parsing Python- tuples and lists
Andrew Diller
dillera@isc.upenn.edu
Thu, 6 Apr 2000 13:10:05 -0400
On Wed, Apr 05, 2000 at 05:01:48PM -0400, R. David Murray wrote:
> On Wed, 5 Apr 2000, Andrew Diller wrote:
> > The scenario: an external method returns a tuple full of stuff(lists and dictionaries), and I want to
> > tear it down and format it using DTML fors and DTML ifs, but I don't see anyone talking about doing
> > this.
>
> dtml-in is the tag you want. It will happily iterate over a tuple or
> list (and it does something with dictionaries ('mappings'), see
> the mapping keyword). And of course you can pythoically manipulate
> your data objects inside a dtml-if expression.
>
Thanks, that's a start, but I'm still not seeing how I can tear into say, for example a tuple of
lists of lists.
Here is a snippet:
---------------------
<dtml-let results="my_external_method(something, more, abitmore)">
<table bgcolor=lightyellow>
<dtml-in results>
<TR>
<TD>results#<dtml-var sequence-index>,<dtml-var sequence-number> = </TD>
<TD><dtml-var sequence-item></TD>
<TD><dtml-var sequence-key><TD>
</TR>
</dtml-in>
</table>
</dtml-let>
-----------------------
this external method returns a tuple of items, these items themselves are compsed of three items, one
of which it itself a big list containing some other lists, a dictionary and some elements.
The above code, if queried with info that returns a tuple of two elements- sequence-item contains the
two tuples, where I think it should _only_ have the current item in the tuple.
sequence-key, however, has the _first_ item of the tuple.
What I am I trying to do is:
(pythonic code)
let RESULTS be a tuple returned by my external method
for x in results:
for y in x:
print y[0]
print y[1]
for z in y[2]:
print z
I can't see how you address items inside the tuple that you initially have.
Does someone have some examples?
-andy diller