问题标签 [del]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 无法在 __del__() 中引用导入的模块
我正在使用一个对象__del__()
从事件中取消订阅它(使用类似于此的事件方案):
奇怪的是,我在程序运行结束时收到以下错误:
这怎么可能?!my_environment
是我导入的模块,怎么会是None?(events
是其中带有事件挂钩的全局对象,例如my_event
)
python - Python del if 在一行中的字典中
是否有一种方法可以执行以下操作?
谢谢
python - __del__ 方法在涉及循环引用时不执行
我发现__del__
当涉及循环引用时,自定义方法似乎没有执行。
这是一个示例代码:
为什么会发生这种情况?
编辑: 感谢 BrenBarn。我找到了原因。
del something
仅将引用计数减something
1。
__del__
只有当引用计数达到 0 时才会执行。
这是一个测试代码:
输出是:
又出现了一个问题:
为什么输出中的最后一行(#####deleting dc2
)会发生?
发生了一些隐式del
操作?
python - 如何在列表中的每次连续零运行中删除除 x 之外的所有零?
对于 Python 中列表中的每次x
或多个连续零的运行,我想删除运行中的所有零,但x
它们除外。如果x = 0
,则删除所有零。
我在想一个 Python 函数,它接受一个列表,L
和一个数字x
,作为输入。
例如,让L = [7, 0, 12, 0, 0, 2, 0, 0, 0, 27, 10, 0, 0, 0, 0, 8]
.
- 如果
x = 0
,则返回L = [7, 12, 2, 27, 10, 8]
- 如果
x = 1
,则返回L = [7, 0, 12, 0, 2, 0, 27, 10, 0, 8]
- 如果
x = 2
,则返回L = [7, 0, 12, 0, 0, 2, 0, 0, 27, 10, 0, 0, 8]
- 如果
x = 3
,则返回L = [7, 0, 12, 0, 0, 2, 0, 0, 0, 27, 10, 0, 0, 0, 8]
- 如果
x = 4
,则返回L = [7, 0, 12, 0, 0, 2, 0, 0, 0, 27, 10, 0, 0, 0, 0, 8]
(与原始相同L
) - 如果
x >= 5
,则返回原始 L,因为没有 5 个或更多连续零的运行。
任何帮助将不胜感激。
python - 如何找出应用程序在缓存中使用对象引用?
我发现很难解释我的问题,因为问题不在代码本身之内。如果您需要更多输入来更好地理解以下内容,请告诉我。
我正在使用ArcGIS调用一堆python脚本,一个接一个。脚本通过导入或继承来使用相同的类。为了初始化类,我经常使用相同的名称。我不知道ArcGIS和python之间的通信是如何实现的。但我注意到我的脚本并不总是表现得像他们应该的那样。我想当我调用第二个脚本时,对对象的引用仍然存在(即使创建对象的脚本已经完成)。
首先:我怎样才能确定我的怀疑是真的?del
其次,如果是这种情况:使用or销毁对所有对象的所有引用是个好主意__del__
吗?做这个的最好方式是什么?
python - 如何从列表列表中删除第 N 个列表项(列删除)?
如何从列表列表中删除“列”?
鉴于:
我想删除“列”2以获得:
是否有slice或del方法可以做到这一点?就像是:
python - Python中的切片列表混淆
好吧,我是 Python 的超级新手,关于切片列表的事情让我很困扰。当我从这段代码中切片 [1] 和 [3] 时,为什么会得到 [1, 3, 4]?
我以为我会得到 [1, 3, 5] 回来,因为它似乎 [2] 和 [4] 正在被删除。
如果-->[1, 2, 3, 4, 5]
是-->[0, 1, 2, 3, 4]
我的逻辑在哪里搞砸了?
python - 删除列表中的所有对象
我创建了许多对象,然后存储在一个列表中。但是我想在一段时间后删除它们,因为我创建了一个新闻并且不希望我的内存变高(在我的情况下,如果我不删除它,它会跳到 20 gigs 的内存)。
这是一个小代码来说明我想要做什么:
A 和 B 是我的对象。C 是这两个对象的列表。我正在尝试使用 C 中的 for 循环明确删除它:一次使用 DEL,另一次使用函数。这似乎不起作用,因为打印继续显示对象。
我需要这个,因为我多次创建 100 000 个对象。我第一次创建 100k 对象,第二次创建另一个 100k 但我不需要保留之前的 100k。如果我不删除它们,内存使用率会非常高,非常快。
python - Python del 语句
del
在 Python 中调用变量。这会立即释放分配的内存还是仍在等待垃圾收集器收集?就像在 java 中一样,显式调用del
对何时释放内存没有影响。
python - 从python中的列表中删除对象实例
我有这个电梯任务,我被困在一个地方。我有一个包含客户列表的建筑对象。我正在尝试一种让客户进入电梯的方法 - 客户被附加到电梯列表中,但无法找到从建筑物列表中删除该客户的方法:尝试过del
但list.remove(item)
没有任何乐趣。谁能指出我正确的方向?