2017-12-15 3 views
0

Das Programm unten erstellt eine Liste von 100 Zahlen zufällig ausgewählt zwischen 1-10. Ich brauche Hilfe, um dann die Liste zu summieren, dann die erstellte Liste zu mitteln.Wie man eine Ausgabe in Python summiert

Ich habe keine Ahnung, wie ich anfangen soll und da ich mir Videos online anschaue, habe ich niemanden, an den ich mich wenden kann. Ich bin sehr frisch in dieser Welt, so dass ich vielleicht nur ganze Ideen vermisse. Ich würde bezweifeln, dass ich eigentlich nicht genug weiß, weil die Videos, für die ich bezahlt habe, Schritt für Schritt nichts zu wissen wissen.

Bearbeiten: Ich wurde informiert, dass das Programm eine Variable überschreibt, nicht eine Liste erstellen. Wie summiere ich meine Ausgabe wie dieses Beispiel?

Das ist alles, was ich auf gehen:

all I have to go on

Code: Summe aller Elemente

import random 

x=0 
while x < 100: 
    mylist = (random.randrange(1,10)) 
    print(mylist) 
    x = x+1 
+0

'So summieren Sie einen Ausgang' ... benutzen Sie die Funktion' sum'. –

+0

Nein, es wird keine Liste erstellt, es überschreibt die gleiche Variable, die Sie "Meine Liste" genannt haben, immer wieder mit einer Zufallszahl – alfasin

Antwort

1

ich denke, der kürzeste und pythonic Weg, dies zu tun ist:

import random 
x = [random.randrange(1,10) for i in range(100)] #list comprehension 
summed = sum(x)         #Sum of all integers from x 
avg = summed/len(x)       #Average of the numbers from x 

In diesem Fall sollte dies nicht eine große Wirkung haben, aber Sie sollten niemalsverwendenund Code manuell Zähler, wenn Sie wissen, wie oft Sie gehen möchten; mit anderen Worten, verwenden Sie immer for, wenn es möglich ist. Es ist effizienter und klarer zu sehen, was der Code tut.

0
def sum(list): 
    sm = 0 
    for i in list: 
     sm+=i 
    return sm 

Gerade sum(list) laufen

Oder Sie können zu bekommen Verwenden Sie

import random 
x=0 
mylist = [] 
sm = 0 
while x < 100: 
    mylist.append(random.randrange(1,10)) 
    sm += mylist[x] 
    x += 1 

Dann sm wird Summe der Liste

0

Der Code ist nicht korrekt. Es wird keine Liste erstellt, sondern immer eine Nummer generiert. Verwenden Sie den nachstehenden Code, um das gewünschte Ergebnis zu erhalten.

import random 
mylist = [] 
for x in range(100): 
    mylist.append(random.randrange(1,10)) 
print(mylist) 
print(sum(mylist)) 

ODER

import random 
mylist = [random.randrange(1,10) for value in range(100)] 
print(mylist) 
print(sum(mylist)) 

Ausgang:

[3, 9, 3, 1, 3, 5, 8, 8, 3, 3, 1, 2, 5, 1, 2, 1, 4, 8, 9, 1, 2, 2, 4, 
6, 9, 7, 9, 5, 4, 5, 7, 7, 9, 2, 5, 8, 2, 4, 3, 8, 2, 1, 3, 4, 2, 2, 
2, 1, 6, 8, 3, 2, 1, 9, 6, 5, 8, 7, 7, 9, 9, 9, 8, 5, 7, 9, 4, 9, 8, 
7, 5, 9, 2, 6, 8, 8, 3, 4, 8, 4, 7, 9, 9, 4, 2, 9, 9, 6, 3, 4, 9, 5, 
3, 8, 4, 1, 1, 3, 2, 6] 

512 
+0

Listenverständnis ist besser. – xaav

+0

Das würde auch funktionieren. Recht.. – Sam

Verwandte Themen