2017-10-11 61 views
1

給定類型爲int的python中的變量,例如,如何將python int轉換爲numpy.int64?

z = 50 
type(z) 
## outputs <class 'int'> 

有這個變量轉換成numpy.int64一個簡單的方法?

它似乎必須將此變量轉換爲一個numpy數組,然後將其轉換爲int64。這感覺頗爲複雜。

https://docs.scipy.org/doc/numpy-1.13.0/user/basics.types.html

+2

真正的問題是爲什麼你需要這樣做? – Julien

+0

@Julien這是某些numpy函數的一個奇怪的副作用。例如'z = np.random.geometric(p = 0.35,size = 10000)'給出了一個與'z = np.random.geometric(p = 0.35)不同的'類型'' – ShanZhengYang

回答

3
numpy.int64(z) 

就這麼簡單。確保你有一個很好的理由,雖然 - 有幾個很好的理由做到這一點,但大多數時候,你可以直接使用常規int

+0

好!出於好奇:是否有一個簡單的例子(大綱就足夠了),以滿足某些需求(我不懷疑它存在)? – sascha

+1

@sascha:主要是確保NumPy處理,而不是常規的Python處理。 – user2357112

+0

感謝您回覆! – sascha

1
import numpy as np 
z = 3 
z = np.dtype('int64').type(z) 
print(type(z)) 

輸出:

<class 'numpy.int64'> 

但我支持他的評論Juliens問題。