Day 03 知识点[python程序运行的方式、变量、注释、内存管理、数据类型]
执行Python程序的两种方式
第一种:交互式,在cmd中运行
优点:调试程序方便,直接给出结果缺点:无法保存,关掉cmd窗口数据就消失
第二种:命令行式通过cmd中输入Python3文本
优点:数据可以保存缺点:无法及时得到报错反馈
Python执行程序的三个阶段:
1.启动Python解释器
2.Python3解释器相当于文本编辑器,将文本从硬盘读入内存
3.Python解释器解释执行文件代码,需要注意的是:只有第三个阶段才识别Python语法,才有Python语法这个概念,否则你输入的仅仅是一串普通的字符
变量
1.什么是变量?
变量定义:一种会变化的状态,这个状态可以描述世间万物,描述世间万物的状态
2.Python中人如何定义变量
name='nick'
height=180
weight=140
定义变量名的命名规范
1.变量名得具有某种意义
2.变量名只能使用字母,数字,下划线组成,并且第一个字符不能是数字,也不能是下划线
3.不能使用关键字
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
ps:nick_height = 180
ps:NickHeight = 180
常量
定义:固定不变的量
由于Python中没有严格意义上的常量,但都是约定俗成的,可以改,但是最好不要改
PA:FANPING_HEIGHT = 150
注释
作用:取消Python的语法,让#后边的字符变成普通的字符
name='egg_li'
height=180 #身高
weight=140 #体重
#多行注释
'''
这里是注释内容
这里是注释内容
这里是注释内容
'''
内存管理(默写背,考试前背,面试背)
1.引用计数
引用计数是针对变量的值0
name = 'nick' # 引用计数为1,这个变量值被引用多少
name2 = name # 'nick'的引用计数为2
name1 = 'nick1'
del name
# 'nick'的引用计数为1
del name2 # nick的引用计数为0
2.垃圾回收机制
当一个新定义一个变量时,变量名指向该变量值,此时该变量值的引用计数为1,当引用计数为0时,python垃圾回收机制会把这个变量值的内存释放掉。但小整数池不会被回收,小整数池为[-5,256]
3.小整数池
[-5,256]之间的整数由于经常用到,所以在python启动的那一刻,就会开辟一块内存空间放入这些整数,他不会被垃圾回收机制回收
x = 10
y = 10
print(x+10)
print(y+10)
# x=10的10的引用计数为多少,其实为2
定义变量的三个特征
name='egg'
print(name)
print(id(name))
print(type(name))
----执行结果---
egg
1636288722176
<class 'str'>
数据类型的介绍
name = 'fanping'
height = 180
hobby = 'read run basketball fishing'
hobby_list = ['read','run','basketball','finshing']
不同的数据会有不同的数据类型
为了定义不同的数据类型,python提供了下述几个数据类型
1.数字类型
- 整型
作用:描述ID号,银行卡号,年龄,物品个数
定义方式:age=18
方法:+ - * / % //
- 浮点型
作用:薪资,商品价格
定义方式:salary=32.2
方法:+ - - / // %
2.字符串类型
作用:名字,描述类
定义方式:name='egg'
用法:可以拼接
3.列表
定义:[]内使用逗号分隔多个元素,元素可以是任何数据类型
hobby = 'read run basketball fishing'
hobby_list = ['read','run','basketball','fishing']
# 0 1 2 3
# -4 -3 -2 -1
print(hobby_list[0])
print(hobby_list[-1])
4.字典
定义:{}内以 key:value的形式存在{}内,并以逗号切割,然后记住key一般为字符串,并且key具有某种意义,value可以为任意数据类型
wenyi_info_dict = {'name':'wenyi','height':140,'weight':160,'hobby_list':['read','run','fishing']}
print(wenyi_info_dict['hobby_list'][1])
print(type(wenyi_info_dict))
5.布尔数据类型
说明:布尔类型一般不用于打印,定义变量,除了0,None,空False都只带布尔值为True
True or False
Day 03 知识点[python程序运行的方式、变量、注释、内存管理、数据类型]的更多相关文章
- 编程语言、Python介绍及其解释器安装、运行Python解释器的两种方式、变量、内存管理
一.编程语言介绍 1.1 机器语言:直接用计算机能理解的二进制指令来编写程序,直接控制硬件. 1.2 汇编语言:在机器语言的基础上,用英文标签取代二进制指令来编写程序,本质上也是直接控制硬件. 以上2 ...
- Python程序运行流程与垃圾回收机制
Python程序运行流程 Python解释器首先将程序将py文件编译成一个字节码对象PyCodeObject(只存在于内存中).(当这个模块的 Python 代码执行完后,就会将编译结果保存到了pyc ...
- Python入门学习:1.变量和简单的数据类型
python入门学习:1.变量和简单的数据类型 关键点:变量.字符串.数字 1.1 变量的命名和使用1.2 字符串1.3 数字1.4 注释 1.1 变量的命名和使用 变量,顾名思义是一个可变的量, ...
- Python变量与内存管理
Python变量与内存管理 –与C语言中的变量做对比,更好的理解Python的变量. 变量 变量在C语言中 全局变量:其存放在内存的静态变量区中. 局部变量:代码块中存放在内存的代码区当中,当被调 ...
- python变量的内存管理
python变量的内存管理 一.变量存在了哪里? 先让我们来看一段代码: height = 100 # 定义变量 # print(100) # print会自动帮你创建一个变量100,打印完之后,马上 ...
- python学习笔记-python程序运行
小白初学python,写下自己的一些想法.大神请忽略. 安装python编辑器,并配置环境(见http://www.cnblogs.com/lynn-li/p/5885001.html中 python ...
- Python基础:五、Python程序的编写方式
python程序有两种编写方式: 1. 进入cmd控制台(linux终端),输入python进入编辑模式,这时候我们可以直接编写python程序 2. 也可以在.py文件中编写python代码,通过p ...
- Python程序的编写方式
直接在Python的交互式环境编写代码 现在,了解了如何启动和退出Python的交互式环境,我们就可以正式开始编写Python代码了. 在写代码之前,请千万不要用“复制”-“粘贴”把代码从页面粘贴到你 ...
- 关于C、Java、Python程序运行耗时及内存用量
最近没有刷题,而是在PTA找几个题目寻找有关程序输入流问题以及各种语言在运行时对计算机消耗内存的问题, 以免很多同学解题的时候发现自己做的对但是出现运行超时的问题:针对运行内存,肯定用C/C++的同学 ...
随机推荐
- nyoj8-一种排序
一种排序 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 现在有很多长方形,每一个长方形都有一个编号,这个编号可以重复:还知道这个长方形的宽和长,编号.长.宽都是整数:现 ...
- 把SQLAlchemy查询对象转换成字典/json使用(汇总)
1.使用SQLAlchemy from sqlalchemy import create_engine,Column,String,Integerfrom sqlalchemy.ext.declara ...
- k8s的概念
Kubernetes(简称为 K8s),最初由 Google 的工程师开发和设计.Kubernetes 是用于自动部署.扩展和管理容器化应用程序的开源系统,它旨在提供跨主机集群的自动部署.扩展以及运行 ...
- J2EE提高之知识清单
Oracle数据库 JDBC事务 Spring事务 SOA XML/JSON redis/memcached 反射,类加载,JVM 工具类:UML, Maven, 性能类:CPU监控,memary监控 ...
- sso 系统分析
一.什么是 sso 系统 SSO 英文全称 Single Sign On,单点登录.SSO 是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统.它包括可以将这次主要的登录映射到其他 ...
- 关于struts值栈的总结,前端页面如何使用标签取得值栈中的数据
用户提交一次请求的执行过程 总结: struts值栈中 两个内容 一个是栈 一个是map 值栈(数据中心)的范围是一个请求 它代替了request作用域 struts自定义标签有一个特点 比如遍历集合 ...
- [GraphQL] Mutations and Input Types
Sometimes, you want to resues object type when doing mutation, you can use 'input' type to help: inp ...
- 4418: [Shoi2013]扇形面积并|二分答案|树状数组
为何感觉SHOI的题好水. ..又是一道SB题 从左到右枚举每个区间,遇到一个扇形的左区间就+1.遇到右区间就-1,然后再树状数组上2分答案,还是不会码log的.. SHOI2013似乎另一道题发牌也 ...
- getColor()方法过时的替代方法
Android SDK 升級到 23 之後,getResource.getColor(R.color.color_name) 過時 使用新加入的方法 ContextCompat.getColor(co ...
- 深入分析JavaWeb Item39 -- 监听器(Listener)学习进阶
一.监听域对象中属性的变更的监听器 域对象中属性的变更的事件监听器就是用来监听 ServletContext, HttpSession, HttpServletRequest 这三个对象中的属性变更信 ...