[Python-de] file einlesen

Tobias Bender tbender at cl.uni-heidelberg.de
Die Apr 11 19:43:37 CEST 2006


Hallo.

Ist ziemlich viel Code gewrden. Dafür kann man sich auch längere  
Kombinationen erzeugen lassen:

def helper2(l, length, i):
     res = [l[0]]
     for j in range(length-1):
         res.append(l[i+j])
     return res

def helper1(l, length):
     res = []
     for i in range(1, len(l)+2-length):
         res.append( helper2(l, length, i) )
     return res

def comb(l, length):
     res = []
     if len(l)<=length-1:
         return res
     res = helper1(l, length)
     return res + comb(l[1:], length)

l = [1,2,3,4,5]
print comb(l, 2)
[[1, 2], [1, 3], [1, 4], [1, 5], [2, 3], [2, 4], [2, 5], [3, 4], [3,  
5], [4, 5]]
print comb(l, 3)
[[1, 2, 3], [1, 3, 4], [1, 4, 5], [2, 3, 4], [2, 4, 5], [3, 4, 5]]
print comb(l, 4)
[[1, 2, 3, 4], [1, 3, 4, 5], [2, 3, 4, 5]]



On 11.04.2006, at 19:18, Joerg Krebs wrote:

> Am Dienstag, den 11.04.2006, 18:11 +0200 schrieb Andreas Pakulat:
>> On 11.04.06 17:58:39, Joerg Krebs wrote:
>>> Am Dienstag, den 11.04.2006, 17:47 +0200 schrieb Gerald Klix:
>>>> Kanns sein, daß Du jemand suchst, der Dir deine Hausaufgaben macht?
>>>
>>> Nein,
>>> das ist keine Hausaufgabe !!
>>>
>>> Ich versuche jediglich eine triviale Loesung durch eine weniger
>>> zeitaufwendige zu verbessern.
>>
>> Wieso liest du die Datei nicht zuerst komplett ein, packst die  
>> Zahlen in
>> eine Liste und iterierst dann ueber diese? Da kannst du dann mit 2
>> verschachtelten Schleifen (so in der 1. Variant) relativ leicht in  
>> der
>> inneren nur ueber die noch nicht gelesenen Elemente der Liste  
>> iterieren
>> (Stichwort: slicing).
>>
>> Andreas
>
> Hallo,
> vielen Dank fuer den Tip mit dem slicing.
> Ich habs nun mit 2 for-schleifen und 2 variablen geloest, siehe anhang
> (sicher nicht wunderschoen programmiert)
>
> falls insteresse, einfach:
> python slicing.py bfab.short.dom
>
> Mfg
> 	Joerg
>
>>
>> <slicing.py>
>> <bfab.short.dom>
> _______________________________________________
> python-de maillist  -  python-de at python.net
> http://python.net/mailman/listinfo/python-de

-------------- nächster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: http://python.net/pipermail/python-de/attachments/20060411/fc44e7f1/attachment-0001.htm