網上有一中出現的情況如下:
batch = 200for x in range(len(order_nos) / batch + 1): # do something
此代碼在python2下運行正常但是在python3下面運行會出現問題;
原因在於兩個版本下對float的處理方法不同,python2下在運行/的時候產生的結果會自動忽略小數,直接取整數,而python3中 是會保留小數點的所以產生了錯誤
其次,對於
y_linear=x+(5.)*np.random.randn(14.)
這個代碼片也會報這個錯誤原因是在python3中randn裏的14.的小數點無法被自動忽略轉換成整型導致了錯誤,所以要根據情況更換使用方法。randn()中的參數一定是正整數