IDLE与pycharm执行相同代码结果却不同,原因分析
2024-10-21 14:35:03
最近在熟悉Python的class类的时候,无意中发现同样的代码,在pycharm和IDLE中结果不同,闲话少说先上代码:
class aa():
def __init__(self,name):
print("my name is %s" % name)
def __del__(self):
print("delete ok")
def sit(self):
print('sit down')
if __name__ =="__main__":
a = aa("liming")
b = aa('suyang')
del a
b.sit()
Python
IDLE中的结果:
Pycharm中的结果:
可以看出pycharm中的 __del__方法被调用了两次。百度了一波发现了原因:
IDLE:是Python安装后自带的编译器,是交互模式没有回收实例。
pycharm:是一套优化后编译器运行后会释放资源,所以会自动触发__del__回收所有创建的实例。另外pycharm的debug模式不会自动触发回收机制,运行结果与IDLE一致。
最后:如果不想让pycharm中__del__内容多次打印的话,建议自定义del方法,这样就可以避免del的内容多次显示
最新文章
- ssh 的搭建
- SQL三大范式三个例子搞定
- Java多线程与并发库高级应用-传统线程同步通信技术
- android activity 管理器AMS----概述
- Java读取图片并修改像素,创建图片
- Codeforces Round #335 (Div. 2) D. Lazy Student 贪心
- [转载] ubuntu下定制Vim/Gvim及使用技巧
- python 安装预编译库注意事项-pip
- Eclipse中设置在创建新类时自动生成注释
- 九度OJ 1207 质因数的个数
- 百度地图LV1.5实践项目开发工具类bmap.util.jsV1.0
- 1 Acid burn ★ Nag,Name/Serial,Serial
- php解决高并发问题
- eclipse和sublime3打开freemarker(.ftl)文件
- LeetCode 993 Cousins in Binary Tree 解题报告
- Spring IOC和Spring AOP的实现原理(源码主线流程)
- windows7下搭建robot framework环境指导
- 1.3.7、CDH 搭建Hadoop在安装之前(端口---第三方组件使用的端口)
- 使用jquery刷新当前页面
- ueditor编辑器视频上传不能预览的问题
热门文章
- LOJ P10004 智力大冲浪 题解
- CSS3背景图片(多重背景、起始位置、裁剪、尺寸)
- 2017.10.2 国庆清北 D2T1 (a*b)|x
- PhpStorm 设置自动FTP同步文件
- MongoDB 数据库创建删除
- windows 10下启用docker的k8s集群
- Git bash Error: Could not fork child process: There are no available terminals (-1)
- 刷题记录:[De1CTF 2019]SSRF Me
- 【Alpha】“北航社团帮”小程序v1.0项目展示
- cocos creator策略类手游开发教程