Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Python: Общие вопросы > Работа со словарем


Автор: Exploiter 23.8.2006, 12:14
Имеется словарь такого типа 
{208: [[значение 1 ][значение2] [значение3]]  209: [[значение 1 ][значение2] [значение3]]}
Мне надо расположить данные таким образом что бы было так 
        ---------------------------------------------------------------------------------------------------------
    |значение3 от ключа 208                          |             значение3 от ключа 209         |
        ---------------------------------------------------------------------------------------------------------
    |Значение1, Значение2 от ключа 208   |    Значение1, Значение2 от ключа 209  | 
       ---------------------------------------------------------------------------------------------------------
Как такое реализовать?
            


Автор: albertn 23.8.2006, 12:29
Не понял, напиши по подробней

Автор: pythonwin 23.8.2006, 12:34
Exploiter, ты хочешь вывести это через print?

Автор: Artemios 24.8.2006, 20:55
Цитата

Exploiter, ты хочешь вывести это через print?

Код

dic = {208:[1,2,3],209:[3,4,5]}
print '-'*47
for key in dic.keys():
    print '| %20s' % key,
print '|\n'+'-'*47
for key in dic.keys():
    print '| %20s' % dic[key][2],
print '|\n'+'-'*47
for key in dic.keys():
    print '| %9s ,%9s' % (dic[key][0],dic[key][1]),
print '|\n'+'-'*47

 smile 

Автор: Exploiter 25.8.2006, 05:34
нет вывести мне надо было в web страничке, использую я для этого mod_python
и Cheetah
В принципе вопрос уже решился 
Так что всем спасибо 
Хотелось еще узнать какой редактор вы предпочитаете, я использую SPE, но им я не совсем доволен  

Автор: pythonwin 25.8.2006, 07:09
Цитата(Exploiter @  25.8.2006,  12:34 Найти цитируемый пост)
Хотелось еще узнать какой редактор вы предпочитаете, я использую SPE, но им я не совсем доволен  

IDLE 1.1.2 или PythonWin

Цитата(Exploiter @  25.8.2006,  12:34 Найти цитируемый пост)
нет вывести мне надо было в web страничке, использую я для этого mod_python
и Cheetah
В принципе вопрос уже решился 


А показать сможешь?

Автор: Exploiter 25.8.2006, 08:32
Вот это пишется в шаблоне 
Cheetah
Цитата

#import locale
<table  width="100%">
    <caption>
  <h4>
    $title<br>
    $accountNumber $accountName<br>
    за $period<br>
  </h4>
    </caption>
    #set $sPeriod=0
    #set $sumProfits=0 
    <thead">
  <tr class="shapka">
    <th width="40%">&nbsp;</th>
    #set $sListPeriodKeys = $sDictPeriods.keys()
    $sListPeriodKeys.sort()
    #set $sDictSummary = {}
    #for $periodKey in $sListPeriodKeys:
    #set $sDictSummary[$periodKey] = 0
    <th width="10%">
    $sDictPeriods[$periodKey]
    </th>
    #end for
    <th width="10%">Итого</th>
  </tr>
    </thead>
    <tbody>
  <tr class="headTableGrey1" >
    #set $iCount=len($sListPeriodKeys)+2
    <td colspan="$iCount">В дебет счетов:</td>
  </tr>
    #set $sListAcc = $sDictOfAcc.keys()
    $sListAcc.sort()
    
    #for $key in $sListAcc:
    <tr>
     <td> <span class="letter">$key</span>$sDictOfAcc[$key]["desc"]</td>
      #set $sDictOfData = $sDictOfAcc[$key]
      #set $nSummary = 0
      #for $periodKey in $sListPeriodKeys:     
       #if $sDictOfData.has_key($periodKey):
        #set $sDictSummary[$periodKey] += $sDictOfData[$periodKey][0]
        #set $nSummary += $sDictOfData[$periodKey][0]
        <td class="rowRight">$locale.format('%.2f',$sDictOfData[$periodKey][0],1)</td>  
       #else
        <td class="rowRight">$locale.format('%.2f',0,1)</td>
       #end if    
      #end for
     <td class="rowRight">$locale.format('%.2f',$nSummary,1)</td>
    </tr>
    #end for
  <tr class="subHeadTableGray">
    <td>Итого:</td>
    #for $periodKey in $sListPeriodKeys:     
    <td class="rowRight">$locale.format('%.2f',$sDictSummary[$periodKey],1)</td>  
    #end for
    <td>&nbsp;</td>
  </tr>
  
  <tr class="headTableGrey1">
    <td colspan="$iCount">В кредет счетов:</td>
  </tr>
  
  #set $sListAccCredit = $sDictOfAccCredit.keys()
  $sListAccCredit.sort()
  
  #set $sDictSummary = {}
  #for $periodKey in $sListPeriodKeys:
    #set $sDictSummary[$periodKey] = 0
  #end for
  
  #for $key in $sListAccCredit:
    <tr>
    <td><span class="letter">$key</span> $sDictOfAccCredit[$key]["desc"]</td>
     #set $sDictOfDataCredit = $sDictOfAccCredit[$key]
     #set $nSummary = 0
     #for $periodKey in $sListPeriodKeys:
      #if $sDictOfDataCredit.has_key($periodKey):
       #set $sDictSummary[$periodKey] += $sDictOfDataCredit[$periodKey][0]
       #set $nSummary += $sDictOfDataCredit[$periodKey][0]
       <td class="rowRight">$locale.format('%.2f',$sDictOfDataCredit[$periodKey][0],1)</td>
      #else
       <td class="rowRight">$locale.format('%.2f',0,1)</td>
      #end if    
     #end for
     <td class="rowRight">$locale.format('%.2f',$nSummary,1)</td>

    </tr>
  #end for
  
  <tr class="subHeadTableGray">
    <td>Итого:</td>
    #for $periodKey in $sListPeriodKeys:     
    <td class="rowRight">$locale.format('%.2f',$sDictSummary[$periodKey],1)</td>  
    #end for
    <td>&nbsp;</td>
  </tr>
    
    </tbody>
    
    
    
  
</table>

#include $document_root + '/bottom.htm'


Автор: albertn 25.8.2006, 09:09
Цитата(Exploiter @  25.8.2006,  05:34 Найти цитируемый пост)
Хотелось еще узнать какой редактор вы предпочитаете, я использую SPE, но им я не совсем доволен 

Блокнот (KWrite)

Автор: pythonwin 25.8.2006, 09:45
Exploiter, спасибо, за код!
+1

Автор: pythonwin 25.8.2006, 13:52
Exploiter, а ты http://www.turbogears.org/preview/ bспользовал?

Если нет, то попробуй. smile

Автор: Exploiter 25.8.2006, 14:03
нет не пробовал, а что хороший редактор?
 

Автор: pythonwin 25.8.2006, 14:28
Цитата(Exploiter @  25.8.2006,  21:03 Найти цитируемый пост)
нет не пробовал, а что хороший редактор?

Это не редактор, а framework. smile

многие моменты в коде можно не писать в ручную, а TG сам его сформирует.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)