Eine weitere Kartenlösung:
%Vor%Mir wurde gesagt,
Schreibe eine Funktion, Quadrat (a), die ein Array, ein, von Zahlen nimmt und ein Array zurückgibt, das jeden der Werte eines Quadrats enthält.
Zuerst hatte ich
%Vor%Aber das funktioniert nicht, seit ich drucke und nicht zurückkomme, wie ich gefragt wurde. Also habe ich es versucht
%Vor%Aber das quadriert nur die letzte Nummer meines Arrays. Wie kann ich die ganze Liste in Ordnung bringen?
Sie könnten ein Listenverständnis verwenden:
%Vor% Oder du könntest map
it:
Oder Sie könnten einen Generator verwenden. Es wird keine Liste zurückgeben, aber Sie können es immer noch durchlaufen, und da Sie keine komplette neue Liste zuweisen müssen, ist es möglicherweise platzsparender als die anderen Optionen:
%Vor% Oder Sie können das langweilige alte for
-loop machen, obwohl das nicht so idiomatisch ist, wie es einige Python-Programmierer bevorzugen würden:
Verwenden Sie ein Listenverständnis (dies ist der Weg in reinem Python):
%Vor%Oder numpy (ein bewährtes Modul):
%Vor% In numpy
werden mathematische Operationen für Arrays standardmäßig elementweise ausgeführt. Deshalb können Sie **2
ein ganzes Array dort.
Andere mögliche Lösungen wären map
-based, aber in diesem Fall würde ich wirklich für das Listenverständnis gehen. Es ist Pythonic :) und eine map
-basierte Lösung, die lambda
s erfordert ist langsamer als LC .
Mir wurde gesagt,
Schreibe eine Funktion, Quadrat (a), die ein Array, ein, von Zahlen nimmt und ein Array zurückgibt, das jeden der Werte eines Quadrats enthält.
Zuerst hatte ich
%Vor%Aber das funktioniert nicht, seit ich drucke und nicht zurückkomme, wie ich gefragt wurde. Also habe ich es versucht
%Vor%Aber das quadriert nur die letzte Nummer meines Arrays. Wie kann ich die ganze Liste in Ordnung bringen?
Sie könnten ein Listenverständnis verwenden:
%Vor%Oder du könntest %code% it:
%Vor%Oder Sie könnten einen Generator verwenden. Es wird keine Liste zurückgeben, aber Sie können es immer noch durchlaufen, und da Sie keine komplette neue Liste zuweisen müssen, ist es möglicherweise platzsparender als die anderen Optionen:
%Vor%Oder Sie können das langweilige alte %code% -loop machen, obwohl das nicht so idiomatisch ist, wie es einige Python-Programmierer bevorzugen würden:
%Vor%Verwenden Sie ein Listenverständnis (dies ist der Weg in reinem Python):
%Vor%Oder numpy (ein bewährtes Modul):
%Vor%In %code% werden mathematische Operationen für Arrays standardmäßig elementweise ausgeführt. Deshalb können Sie %code% ein ganzes Array dort.
Andere mögliche Lösungen wären %code% -based, aber in diesem Fall würde ich wirklich für das Listenverständnis gehen. Es ist Pythonic :) und eine %code% -basierte Lösung, die %code% s erfordert ist langsamer als LC .
Verwenden Sie numpy.
%Vor%Eine weitere Kartenlösung:
%Vor%Also, wie würde ich das Quadrat der Zahlen von 1-20 mit der obigen Funktion
tunSie können
tun %Vor%was zurückgibt
%Vor%oder, wenn die Liste bereits Werte enthält
%Vor%was zurückgibt
%Vor%Hinweis : Sie möchten nicht
%Vor%, da es eine Liste in einer Liste zurückgibt:
%Vor%Also, wie würde ich das Quadrat der Zahlen von 1-20 mit der obigen Funktion
tun