2017-06-14 1 views
0
R = [(1, 2,3,4), (1, 3), (1, 4), (1,4, 5), (1, 6), (2, 3), (2, 4), (2, 5), (2, 6), (3, 4), (3, 5), (3, 6), (4, 5), (4, 6), (5, 6)] 

Von der oben genannten Menge möchte ich nur minus den Index oder irgendwelche Werte von jedem Element des Tupels.Wie man die Elemente der Tupel durch eigenen Index oder mit einigen Werten in Python minus

Und die erwartete Antwort wäre

#R = [(1-0, 2-0,3-0,4-0), (1-1, 3-1), (1-2, 4-2) and so on 

hier ist mein Code, aber ich will es auf einfachste Weise helfen pls

final_matches = {k: v for k,v in matches.items() if len(v) >= 4} 

    for k, v in matches.items(): 
     if len(v) >= 3: 
      print(k,':',v,'/',len(v)) 
      #for j in range(0,len(v)): 
       #print(v[j]) 
+0

sollte es String Präsentation '1-0' oder arithmetisches Ergebnis sein? – RomanPerekhrest

+0

nein nein ich brauche nur den Wert –

+0

(1,2,3,4) (0,2) wie das –

Antwort

1

du versuchen:

R = [(1, 2,3,4), (1, 3), (1, 4), (1,4, 5), (1, 6), (2, 3), (2, 4), (2, 5), (2, 6), (3, 4), (3, 5), (3, 6), (4, 5), (4, 6), (5, 6)] 

new_list = [tuple(c-i for c in a) for i, a in enumerate(R)] 

um nur Tupel mit Länge drei zu erhalten:

new_list = [i for i in new_list if len(i) >= 3] 

fertige Ausgabe:

[(1, 2, 3, 4), (-2, 1, 2)] 
+0

für k, v in matches.items(): wenn len (v)> = 3: drucken (k, ':', v, '/', len (v)) hier ist v mein Tupel und ich muss minus für jede Iteration für jedes Element des Tupels minus. pls –

+0

meinen Sie, dass Sie nur die Tupel wollen, die eine Länge größer oder gleich 3 haben? – Ajax1234

+0

Ja Bruder genau richtig ... ich habe Tupel v und ich muss diese Elemente mit k, das ist alles –

0

v[:] = [x - k for x in v] können dies tun, wenn man durch die dict laufen.

Verwandte Themen