![](/img/trans.png)
[英]Why I can pass an array as input to a lambda function that uses numpy but I cant pass it to a lambda function without numpy?
[英]Can i pass a numpy array as an argument to a function, just like a variable?
是否希望將numpy數組作為參數傳遞給函數? 怎么做? 我可以像下面顯示的變量一樣簡單地傳遞它嗎?
def force(x,y,z):
for i in range(N):
for j in range(i+1,N,1):
xij=x[i]-x[j]
yij=y[i]-y[j]
zij=z[i]-z[j]
Python是一種動態語言,這意味着在編譯過程中不會進行類型檢查。 您可以將任何東西傳遞給函數。
我相信在numpy的較新版本(我使用1.13)中,您可以通過將numpy數組傳遞給您為標量類型編寫的函數來調用函數,它將自動將函數調用應用於numpy數組上的每個元素並返回另一個numpy數組
>>> import numpy as np
>>> squarer = lambda t: t ** 2
>>> x = np.array([1, 2, 3, 4, 5])
>>> squarer(x)
array([ 1, 4, 9, 16, 25])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.