2017-05-22 11 views
0

Windows、Mac、Linuxでokを実行するコードを作成しましたが、Androidで実行すると結果に間違った値が返されます。このバグについては何も見つかりませんでした。AndroidのKivyのバグ

LPA = 0.79、VPA = 2.93、VAA = 19.53 VIは7.22、MS-63.05でなければなりませんが、アンドロイドはVI = 1、MS = -94.88を返します。

def ButAcao(self, obj): 
     try: 
      LPA = float(self.LPA.text) 
      VPA = float(self.VPA.text) 
      VAA = float(self.VAA.text) 
      VIresultado = (22.5 * LPA * VPA)**(1/2) 
      MSresultado = ((VIresultado/VAA) - 1) * 100 
      VIresultado = str("{:.2f}".format(VIresultado)) 
      MSresultado = str("{:.2f}%".format(MSresultado)) 
      VIresultado = "Preço Justo por ação: " + VIresultado 
      MSresultado = "Margem Segurança: " + MSresultado 
     except: 
      VIresultado = "erro" 
      MSresultado = "erro" 
      pass 
     self.VI.text = VIresultado 
     self.MS.text = MSresultado 
     self.VI.texture_update() 
     self.MS.texture_update() 
+0

あなたは、Android上のデスクトップとpython2上のpython3の下で実行していますか? – inclement

答えて

0

エミュレータを確認したり、電話/入力を入力したり、Androidとの統合方法を確認してください。私はあなたの説明の値を使用してコードを実行すると、彼らがどうあるべきかだ:

VI = 7.22 
MS = -63.05% 

IDE /端末としてエミュレータとしてBlueStacksQPython3を使用します。

enter image description here

+0

はい、okを実行するPythonで...しかし、アンドロイドでVI = 1とMS = -94.88を返します。私はそれがkivyのバグだと思う。私はBuildozerをapkにコンパイルします。 –

+0

次に、別のビルドエージェントを試してみてください。まだ動作しない場合は、kivyにバグを送信してください。それ以外にも、コードがどのように実装されているかを詳しく説明しない限り、問題を再現するには十分ではありません。 – Casey

+0

私は解決します...アンドロイドのKivyはPython 2を使用しています。私はその操作(1/2)= 0をPython 3のPython 2で0.5を返します。ありがとうございました... –