当前位置:
首页 > Python基础教程 >
-
python基础教程之python-面试常用 --变量、内存管理
执行Python程序的两种方法
第一种:交互式(jupyter就是对这种进行了封装)
- 优点:直接给出结果
- 缺点:无法保存
第二种:命令行式,通过Python解释器输入文本(pycharm对这种进行了封装)
- 优点:可以保存
- 缺点:无法及时得到报错反馈
命令行式可以识别任何文本文件,例如:.txt文件、.py文件。
命令行式打开的三个步骤
- 编写Python文件
- 找到Python文件的路径,把文本从硬盘中读入内存
- 在内存运行并进行解释(这个时候才会有Python语法的概念,才会打印)
变量
什么是变量
变量:一种描述世间万物的状态
Python中定义变量
name = 'rayn'
#变量名 赋值符号 变量值
- 变量名:用来引用变量值,凡需要用变量值,都需要通过变量名
- 赋值符号:赋值
- 变量值:存放数据,用来记录现实世界中的某种状态
变量名的命名规范
- 变量名应该能反映变量值所描述的状态
- 变量名必须用字母、数字、下划线组合;并且变量名的第一个字符不能是数字,也不能是下划线
- 关键字不能成为变量名
两种定义变量名的方式
下划线式(推荐用这种,清晰、明了)
rayn_height = 180
print(rayn_height)
180
驼峰体
RaynHeight = 180
print(RaynHeight)
180
常量
固定不变的两
定义常量
- Python中没有严格意义上的常量,常量也能更改,但是不建议;常量是人们约定俗成的,最好不要更改
- Python中常量名用大写字母来表示
RAYN_HEIGHT = 180
注释有什么用
- 取消Python的语法,让#后面的字符变成普通的字符
- 解释代码块的意思
注释的原则
- 不用全部加注释,只需要在自己觉得重要或者不好理解的部分加注释即可
- 注释可以用中文或英文,但不要用拼音
内存管理
变量:接收变量值,描述世间万物变化的状态
而变量是如何在内存中创建的?
当我们写一个文件,文件是保存在硬盘里的,只有Python解释器运行了这个文件,那字符进入了内存,才会有变量这个概念,也就是说变量是存放在内存当中的。在内存中,我们每定义一个变量,就会在内存中开辟一块内存空间来给变量值,而变量名就是个名牌来指向变量值。
引用计数
- 引用计数是针对变量值的
x = 257 # 257的引用计数加1,为1
y = x # 257的引用计数加1 为2
x = 258 # 257的引用计数减1 为1
del y # 257的引用计数减1 为0 ,触发Python垃圾回收机制,清理257的内存占用
Python的垃圾回收机制
- 当变量值的引用计数为0的时候,Python会自动回收该变量值的内存占用
小整数池
- 在Python中,因为[-5,256]之间的整数经常被用到,所在在Python启动的那一刻,就会开辟一块内存空间放入这些整数,它不会被垃圾回收机制回收。
而我们时常碰到不在小整数池中的值,有时打印的内存地址也是一样的,这个主要是jupyter和pycharm会把时间短,并且内存占用比较小的值,也会放在同一块内存中。
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比
一款纯 JS 实现的轻量化图片编辑器
关于开发 VS Code 插件遇到的 workbench.scm.
前端设计模式——观察者模式
前端设计模式——中介者模式
创建型-原型模式