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

据我所知这是第一个包装成一个对象,返回值是和包装纸destoryed是Python的原语对象或primitves类似于对象

'apple'.capitalize() // in python 

做同样发生在Python或它只是一个真实的物体。

编辑: 作为回答,他们只是普通的蟒蛇香草对象。

现在据我了解,原语很快,因此他们的计数器对象包装提供。

那为什么不用python来实现它们呢?有没有特别的设计理由?两种方法的优点和缺点。

+1

Python中没有原语!一切都是一个对象。但是,像字符串或整数这样的对象是不可变的。 – schwobaseggl

+0

有没有任何优点,当其他语言有包装为什么没有python实现它。像在JavaScript中一样,一切都是一个对象,字符串仍然是不可改变的。'apple'.something将通过一个包装器。 – garg10may

+0

字符串在Python中也是不可变的... – jonrsharpe

回答

2

Python不是Java。它没有基元。它也不打包或打开对象。

'apple'str类型的对象。

+0

不会让语言变慢吗? – garg10may

+1

并不特别。为什么呢? –

+0

因为它们很重,为什么Java会采取额外的措施来提供原始语言而不是JavaScript呢? – garg10may