2 votes

Comment obtenir chaque ligne en Python ?

J'ai besoin de faire ça :

"""
Program a function

    def increasing (m)

qui sera capable, pour toute matrice m d'entiers positifs, de vérifier si les sommes des lignes de ce tableau sont croissantes.

examples
1 3 2 5        The sums of the rows        2 8 4 1        The sums of the rows
7 9 4 1        are 11, 21 and 23.          6 2 8 5        are 15, 21 and 15.
3 5 6 9        --> increasing              8 4 2 1        --> not increasing
"""

Donc, je veux utiliser sum() ce qui est parfaitement faisable, je suppose.

J'ai commencé comme ça :

def increasing (m):
    for row in m:
        row[1]

Mais je sais que row[1] va juste sortir les nombres dans indice 1 de chaque rangée. Ce que j'ai en tête est le suivant :

def increasing (m):
    for row in m:
        if sum(row)[first_row] > sum(row)[second_row]:
           return False

Mais ce n'est qu'un découpage, et je ne sais pas comment compter les rangs pour pouvoir les comparer.

Je ne veux pas utiliser de module ou quoi que ce soit, juste du simple Python. Quelqu'un peut-il m'indiquer la bonne direction ? J'ai juste besoin que ce soit aussi simple que possible.

Exemple de format d'entrée :

increasing_l = [
    [1, 3, 2, 5],
    [7, 9, 4, 1],
    [3, 5, 6, 9]
]

not_increasing_l = [
    [2, 8, 4, 1],
    [6, 2, 8, 5],
    [8, 4, 2, 1]
]

test1 = increasing(increasing_l)
test2 = increasing(not_increasing_l)

print "should be True: %s" % test1
print "should be False: %s" % test2

0voto

muyns Points 7

From sklearn import preprocessing

import csv, sys

avec open("m.txt") comme f :

reader = csv.reader(f)
next(reader) # skip header
data = [r for r in reader]
data.pop(0)
print(type(data))
a=np.asarray(data)
print(np.nanvar(a,ddof=1))

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X