专栏首页python-爬虫python的垃圾回收机制

python的垃圾回收机制

4.29自我总结

一.Jupyter的安装以及运行

1.Jupyter的安装

运行CMD,在CMD中输入pip3 --default-timeout=100 install -U jupyter

再输入pip3 install jupyter_contrib_nbextensions

再输入jupyter contrib nbextension install --user

==关于pip3 --default-timeout=100 install -U jupyter的详细意思==

==pip3==:pip3及为pip3.exe ,是在E:\python\Scripts\中pip3.exe(需要提前在环境变量path中设置路径)

==--default-timeout=100==:下载过程中允许出现100ms的延迟在100ms内未能读取数据下载不会中断

==install==:下载

==-U jupyter==:为下载应用的名称

其中jupyter中插件安装也一样,及再cmd中运行,在jupyter中找到需要安装的插件名称

然后输入为pip3 instal (插件名称)

2.jupyter的运行

1.首先新建一个文件夹用于放jupyter制作完成的文件

2.运行cmd

行cmd

3.在CMD中将路径找到之前新建的文件夹

4.在路径后面输入jupyter notebook

3.jupyter中快捷键

shift+enter 运行程序

esc+M 切换至与Typora一样的界面

二.小整数迟

python中自带的几个变量值,[-5,256]中

三.python垃圾回收机制

当变量值引用次数为0时,该变量值会被自动删除

如:

x = 6666
del (x)
其中666会被回收
x =1
del(x)
其中1不会被回收,应为1为小数整池[-5,256]

四.引用计数:变量值的引用次数

如:引用的值在小整数池中

x=1
y=1
z=1
1的引用次数为3,因为1位小整数池中的变量值,位置一样,XYZ引用的是同一个值,所有1的引用次数为3

如:引用的值不在小整数池中

x = 257
y = 257
z = 257
257的引用次数为1,因为257不是小整数池中id不一样,其中的XYZ都引用不同位置中的257,所以257的引用次数为1

五.个人举例记忆,几种情况下的引用次数

x = 1
y = 1
z = 1
引用次数为3
x = 257
y = 257
z = 257
引用次数为1

==以上两种情况发生的不同,是由于引用的变量值是否为小整数池中值有关==

x = 1
y = x
del(x)
print(y)
#会正确的打印出y的值,因为在删除X时候,Y以及被赋予1
x = 1
del(x)
y = x
print(y)
#会报错,因为在X想赋予Y的时候,X以及被删除了,后续y = x中X仅仅为一个新的变量名没有被赋予任何值所有y不会被赋予任何一个值。则最后无法打印出一个空的y变量

五.今日题目

  1. 简述Python垃圾回收机制:当变量值引用次数为0时,该变量值会被自动删除
  2. 对于下述代码:
x = 10
y = 10
z = 10
del y

10的引用计数为多少?次数为1

x = 257
y = x
del x
z = 257

x对应的变量值257的引用计数为多少?次数为2

  1. 简述Python小整数池概念:python当中固定自带的的值,在[-5,256]中
  2. 对于x = 10,请用Python代码分别打印变量值、变量值内存地址和变量数据类型。 #打印变量值 print(x) #打印变量值内存地址 print(id(x)) #变量类型 print(type(x))
  3. 对于下述代码:
x = 257
y = x
z = 257

请判断x、y、z的变量值是否相同?x、y、z的所在的内存地址是否相同?请用python代码阐述为什么?

x = 257
y = x
z = 257
#x,y,z的变量值
x == y == z
ture
#x,y,z的内存地址
id(x) == id(y) != id(z)
x is y is z(is表示判断内存地址是否相同)
ture

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • python爬虫网页解析之lxml模块

    方法二:下载对应系统版本的wheel文件:http://www.lfd.uci.edu/~gohlke/pythonlibs/#lxml

    小小咸鱼YwY
  • BeautifulSoup的重要操作

    BeautifulSoup相关概念总结:https://www.cnblogs.com/pythonywy/p/11134481.html

    小小咸鱼YwY
  • GIL与异步回调

    GC进程当内存占用达到某个阈值时,GC会将其他线程挂起,然后执行垃圾清理操作,垃圾清理也是一串代码,也就需要一条线程来执行。

    小小咸鱼YwY
  • Google Mock(Gmock)简单使用和源码分析——源码分析

            通过《Google Mock(Gmock)简单使用和源码分析——简单使用》中的例子,我们发现被mock的相关方法在mock类中已经被重新实现了,...

    方亮
  • Python2下载单张图片和爬取网页图片

    昨天用Python2爬取了一首歌的热评和评论总数,今天用Python2来下载图片。 一、需求分析 1、知道图片的url地址,将图片下载到本地。 2、知道网页地址...

    企鹅号小编
  • React服务端渲染与同构实践

    前两年服务端渲染和同构的概念火遍了整个前端界,几乎所有关于前端的分享会议都有提到。在这年头,无论你选择什么技术栈,不会做个服务端渲染可能真的快混不下去了!最近刚...

    IMWeb前端团队
  • 腾讯TMQ在线沙龙|Code Review也有潜规则

    Code Review也有潜规则 活动时间:2017年3月30日 QQ群视频交流 活动介绍:TMQ在线沙龙第十八期分享 本次分享的主题是:Code Review...

    腾讯移动品质中心TMQ
  • 前后端的“互不信任” -- 购物车之类涉及到钱财方面的数字计算

    今天喝酒去了,刚回来,文章较短哈。 标题的意思就是说, 在购物之类涉及到真实钱财的计算之中, 前端不参与数字的计算。 因为前端的js不安全,js它是不保密的。...

    web前端教室
  • Linux内核高端内存

    x86 CPU采用了段页式地址映射模型。进程代码中的地址为逻辑地址,经过段页式地址映射后,才真正访问物理内存。

    233333
  • Linux内存描述之高端内存--Linux内存管理(五)

    过去,CPU的地址总线只有32位, 32的地址总线无论是从逻辑上还是从物理上都只能描述4G的地址空间(232=4Gbit),在物理上理论上最多拥有4G内存(除了...

    233333

扫码关注云+社区

领取腾讯云代金券