2017-10-06 48 views
0

私は、次のコードを得た:Pythonにstatic_castキーワードまたは標準メソッドがありますか?

def DisplayListCurveKeys(pCurve, pProperty): 
    lKeyCount = pCurve.KeyGetCount() 

    for lCount in range(lKeyCount): 
     lKeyValue = static_cast<int>(pCurve.KeyGetValue(lCount)) 
     lKeyTime = pCurve.KeyGetTime(lCount) 

     lOutputString = "   Key Time: " 
     lOutputString += lKeyTime.GetTimeString(lTimeString) 
     lOutputString += ".... Key Value: " 
     lOutputString += lKeyValue 
     lOutputString += " (" 
     lOutputString += pProperty.GetEnumValue(lKeyValue) 
     lOutputString += ")" 

     print(lOutputString) 

それはC++からのように見えるstatic_cast<int>表現を、使用しています。 Pythonで有効ですか?

+0

関連:https://stackoverflow.com/questions/30104945/static-cast-equivalent-in-python – user463035818

答えて

3

いいえ、static_castはPythonにありません。

表示されている例では、pCurve.KeyGetValue(lCount)(コードでは型が明らかではありません)がintにキャストされています。 static_cast<int>をちょうどintに置き換えてみてください。これは、元の値が何らかの種類のスカラー数であるか、整数を表す文字列である場合に機能します。

たとえば、int('23') == 23は、PythonではTrueと評価されます。

pCurve.KeyGetValue(lCount)の種類についてさらに詳しい情報を提供できる場合は、int(...)のアプローチが機能しない場合、解決策を考え出すことができます。

+0

誰かがC++から移植していて、この部分を忘れたと思います。私はPythonを初めて使うので、Pythonがそのような構文を許さないかどうかはわかりませんでした。 – Dims

関連する問題