2017-10-11 7 views
-2
'apple'.upper() // in javascript 

ようなオブジェクトやprimitvesプリミティブ実際のオブジェクトです。AreのPythonはオブジェクト

編集: 回答として、それらはPythonの単純なバニラオブジェクトです。

私が知っているように、プリミティブは高速であるため、カウンタオブジェクトラッパーが提供されます。

なぜ、それらを実装していないのですか?特別な設計上の理由はありますか? 2つのアプローチで長所と短所。

+1

Pythonではプリミティブがありません!すべてがオブジェクトです。しかし、文字列や整数のようなオブジェクトは不変です。 – schwobaseggl

+0

他の言語にラッパーがあると、Pythonがそれを実装しなかった理由があります。 javascriptのようにすべてがオブジェクトですが、文字列はまだ不変です。「apple」。何かがラッパーを経由します。 – garg10may

+0

文字列もPythonでは不変です... – jonrsharpe

答えて

2

PythonはJavaではありません。プリミティブはありません。オブジェクトをラップまたはラップもしません。

'apple'は、タイプstrのオブジェクトです。

+0

それは言語を遅くしませんか? – garg10may

+1

特にありません。それはなぜだろう? –

+0

彼らは重いので、Javaはなぜプリミティブを与える余分な手段を取ったのですか、またはJavaScriptがラッパーを作るのですか? – garg10may

関連する問題