S=[22, 33, 45.6, 21.6, 51.8]
P=2.45
Tu S jest tablicąJak pomnożyć poszczególne elementy listy za pomocą numeru?
Jak będę pomnożyć to i uzyskać wartość?
SP=[53.9, 80.85, 111.72, 52.92, 126.91]
S=[22, 33, 45.6, 21.6, 51.8]
P=2.45
Tu S jest tablicąJak pomnożyć poszczególne elementy listy za pomocą numeru?
Jak będę pomnożyć to i uzyskać wartość?
SP=[53.9, 80.85, 111.72, 52.92, 126.91]
można użyć wbudowanej map
funkcję:
result = map(lambda x: x * P, S)
lub list comprehensions że jest nieco bardziej pythonic:
result = [x * P for x in S]
Tak jak w przypadku notatki, operacje na macierzach, takie jak mnożenie skalarne, są wysoce zoptymalizowane pod kątem numpy i są znacznie szybsze niż rozumienie list. Ogólnie zaleca się, aby nie traktować numpy tablic takich jak listy Pythona. – JoshAdel
Dobra wskazówka. Nie zauważyłem "numpy" w tagach. –
Uważam te interpretacje za całkowicie niezrozumiałe. –
W numpy jest dość prosty
import numpy as np
P=2.45
S=[22, 33, 45.6, 21.6, 51.8]
SP = P*np.array(S)
Polecam przyjrzeniu w numpy tutorialu o wyjaśnienie pełnych możliwości tablic numpy za:
Jeśli używasz numpy.multiply
S = [22, 33, 45.6, 21.6, 51.8]
P = 2.45
multiply(S, P)
To daje w wyniku
array([53.9 , 80.85, 111.72, 52.92, 126.91])
W języku Python S nie jest tablicą, jest listą. Istnieje bardzo duża różnica między dwoma typami kontenerów. Jeśli potrzebujesz tablic numerycznych, użyj numpy. – talonmies
Nie, S nie jest nawet listą – joaquin
@joaquin: Módl się, co to jest "S", jeśli to nie jest lista? – talonmies