python - 将变量设置为 var=var=value 可以吗?
问题描述
例子:
x=y=z=True
我想知道是否由于内存或smth而导致性能不佳,因为例如 bool 是不可变的。
解决方案
对于单个名称,它具有与
x=True
y=x
z=x
但是(取决于编译器中的“优化”)可能更有效,因为它不(天真地)涉及重新加载存储到x
.
使用复杂的名称,可能会出现更复杂的行为:
a[i]=i=j
这会更新a[i]
(使用 old i
),然后设置i
为相同的值。这是否比
a[i]=j
i=j
既取决于算法的性质(它在概念上是否重要,因为它们是在某种排列中分配的索引之后的?)以及是否i
只是j
一个变量或实际上是一些不耐重复的复杂表达式。(当然可以写
new_i=j
a[i]=new_i
i=new_i
但请记住,额外的变量名称也会降低可读性——new_i
稍后使用?)
推荐阅读
- java - Minecraft 插件和 JSoup.jar
- c# - 创建 Razor 页面响应缓存
- css - NextJS 单一样式的组件未加载
- python - 如何根据字符串 Z 值更改散点 XY 图颜色?
- javascript - 如何将日期对象设置为特定值
- php - 将 curl 帖子转换为 wp_remote_post
- highcharts - 为什么 xAxis.min 不起作用,但 xAxis.max 是?
- mysql - sql只从列中提取数值
- python - Python pd.read_excel 不支持的格式,或损坏的文件
- blockchain - 如何获取特定 NFT 代币的交易详情?