python中字符串是通过什么进行存储的

  介绍

这篇文章主要介绍了python中字符串是通过什么进行存储的,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。

python内部是通过享元模式存储字符串的。享元模式是为了降低存储空间而做的一种优化手段。字符串内容相同的两个字符串指向的是同一个对象,这正是享元模式所做的。

 python中字符串是通过什么进行存储的

python内部存储字符串采用的是享元模式(享元模式)。

享元模式是为了降低存储空间而做的一种优化手段。我们知道字符串内容同样的两个字符串,事实上指向的是同一个对象,这个正是享元模式所做的。

那么为什么能够使用这个模式呢?学过python的同学应该了解,字符串在python中属于不变的类型,和元组(tuple)一样,正是由于这个原因,字符串才能够采用享元模式。

下面我们来具体分析一下:

用过python的人对于==和应是该不陌生,可是这里我还是介绍一下。

==是用来推断两个东西是否相等,比方:

a =10。   时间=b  10;   打印(==a  b);

输出是正确的;

再看一个样例:

a =, (1、2、3);   b =, (1、2、3);   c =, (1、2、4);   打印(a==b);   打印(==c);

输出各自是真和假。

再来看。是用来推断同一性而不是同样性。

来看以下的样例:

x =, (1、2、3);   y =, (1、2、3);   打印(x  is  y);

输出是假的,

而仅仅有:

x =, [1, 2];   x=y ;   打印(x  is  y);

输出是正确的;

从上面的样例中能够看出==和两个的差别之处。

那么疑问来了,我们把对照的东西换成是字符串的话,结果是否会出乎你意料。看以下的样例:

x =,“欢”;   x=y ;   打印(x ==, y);   打印(x  is  y);

输出是:

正确的   真正的

如今看以下的样例:

x =,“欢”;   时间=y “欢”;   打印(x ==, y);   打印(x  is  y);

输出是:

正确的   真正

感谢你能够认真阅读完这篇文章,希望小编分享python中字符串是通过什么进行存储的内容对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,遇到问题就找,详细的解决方法等着你来学习!

python中字符串是通过什么进行存储的