栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

CPython字符串添加优化失败案例

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

CPython字符串添加优化失败案例

在基于列表的方法中,从列表索引0开始的字符串被获取并修改,然后再放回到索引0处的列表中。
由于这短暂的时间,解释器在列表中仍然具有旧版本的字符串,并且不能就地执行修改。
如果您查看Python的源代码,那么您会发现不支持在适当位置修改列表的元素。因此,必须从列表中检索对象(在这种情况下为字符串),进行修改然后放回去。
换句话说

list
str
类型与
+=
操作员的类型支持完全无关。

并考虑以下代码:

l = ['abc', 'def']def nasty():    global l    l[0] = 'ghi'    l[1] = 'jkl'    return 'mno'l[0] += nasty()

的值

l
就是
['abcmno','jkl']
这证明了
'abc'
从列表中获取,则
nasty()
得到了执行修改的列表中,字符串的内容
'abc'
'mno'
得到级联和结果被分配到
l[0]
。如果
nasty()
在访问之前对其进行了评估
l[0]
以对其进行修改,那么结果将为
'ghimno'



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/641700.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号