Python变量详解
Python变量详解
一、变量的定义
变量:记录事物变化的状态。
为了让计算机具备人的某项功能,能更好的完成人类下达的任务,由此诞生了变量。
二、变量组成的三部分
变量是有三部分构成。
# 变量名 赋值符号 变量值
name = "Tom"
2.1 变量名
当变量定义的时候,会在内存中申请一块空间专门用来存放变量值,而变量名,就是这个空间的门牌号,能方便的找到这块内存空间。
2.1.1 变量名的命名规范
变量名要能描述变量值的意思,最好做到顾名知意,合理的变量名命名可以让你的程序的可阅读性提高。
- 为了提高自己在程序员中的地位,切记不可用拼音。
- 为了提高自己在程序员中的地位,切忌不可用中文。
- 不可使用Python中的关键字。
- 不可数字开头。
2.1.2 变量名的命名风格
变量名一般有三种命名方式。
- 纯小写+数字+下划线。变量名一般会采用这种方式。
- 驼峰体。首字母大写。
- 纯大写。这一般是用来定义程序中的常量。注意,这是约定俗成的规范,不是Python本身的语法。
2.2 赋值符号
这个等号就是变量的赋值符号。它的意义是将右侧的变量值内存地址绑给左侧的变量名,当我们在使用变量名的时候就可以找到变量值了。
2.3 变量值
变量值就是事物的状态了,定义的之后可以用变量名来访问。变量值有一个引用次数,一旦这块空间被引用次数为0,就意味着我们没有途径能找到这块空间了,如果不进行清理, 会导致内存被占用。一旦找不到这块空间,就会触发Python的内存管理:垃圾回收机制,对该空间进行回收在利用。
三、变量的三个重要特性
3.1 特性
变量一共有三个特性
- id.就是变量值得内存空间地址,每一个值都有唯一一个id。内存地址不同,id就不相同。可以使用id()来查看变量的内存地址。
- type。不同类型的值记录事物的状态有所不同,这就是Python的数据类型。可以使用type()来查看。
- 变量值。就是存储值的本身。
3.2 is和==
两者都是用来比较的,但是又不相同。
is:主要是用来判断两个值是不是属于同一个内存空间,即内存地址是否相同。
==:是判断值是否相等,而不管是否是一个内存空间。
3.3 小整数池
我们不说pycharm中的变化,只说python解释器中的变化。
通常来说,我们定义两个值相同的变量,他们会存在两个不同的内存空间,如此的话,他们的id肯定会有所不同,但是实际情况是,我们会发现在python交互式环境下,定义的两个值相同的变量的id是相同的,为什么会发生这种变化呢?
小整数池的概念就来了,当Python解释器运行的饿时候,它会把一些常用的整数和字母先提前定义,我们在使用的时候,不是申请内存空间,而是直接使用的已经定义好的空间,这就是小整数池。
小整数池的范围是[-5,256],还有纯字母,笔者实验了字母加数字,依然得到id相同。
注意:python解释器和pycharm有所不同,pycharm中对常用的小整数池进行了扩容,建议开发时以Python解释器为主。
tip:练习作业
#1、病毒程序需要定期将监控到的数据写入日志文件,请记录下日志文件路径C:\a\b\c\adhsvc.dll.system32,方便后期处理
LOGFILELOAD = C:\a\b\c\adhsvc.dll.system32
#2、病毒程序在上传文件时,发送的报头数据里需要包含文件信息:文件名a.txt、大小360,请记录下文件信息
head_info = {"file_name": "a.txt",
"file_size": 360}
#3、程序运行过程中有一段错误日志需要记录下来,错误日志为"上传文件失败"
mis_info = "上传文件失败"
#4、假设我收到一条信息要记录,信息为中病毒客户端的信息"[2020-02-18-17:00:48] 癞蛤蟆病毒感染者-> 80.82.70.187:33649 正在上传数据"
msg_client = "[2020-02-18-17:00:48] 癞蛤蟆病毒感染者-> 80.82.70.187:33649 正在上传数据"
#5、把服务端ip地址存放下来,ip地址为10.0.10.11
server_ip = "10.0.10.11"
#6、病毒程序需要每隔3秒才运行一次,请记录下这个时间间隔
interval_seconds = 3
Python变量详解的更多相关文章
- Python 变量详解[学习 Python 必备基础知识][看此一篇就够了]
您的"关注"和"点赞",是信任,是认可,是支持,是动力...... 如意见相佐,可留言. 本人必将竭尽全力试图做到准确和全面,终其一生进行修改补充更新. 目录 ...
- Python—变量详解
变量赋值 a = 1 b = 2 c = 3 print a, b, c # 1 2 3 a = b = c = 1 print a, b, c # 1 1 1 a, b, c = 1, 2, 3 p ...
- 第7.25节 Python案例详解:使用property函数定义与实例变量同名的属性会怎样?
第7.25节 Python案例详解:使用property函数定义与实例变量同名的属性会怎样? 一. 案例说明 我们上节提到了,使用property函数定义的属性不要与类内已经定义的普通实例变量重 ...
- Python闭包详解
Python闭包详解 1 快速预览 以下是一段简单的闭包代码示例: def foo(): m=3 n=5 def bar(): a=4 return m+n+a return bar >> ...
- Maya 常用环境变量详解
Maya 常用环境变量详解 前言: Maya 的环境变量让用户可以很方便的自定义 Maya 的功能. 在 Maya 的 Help 帮助文档中有专门的一个章节< Environment Varia ...
- Shell学习之Bash变量详解(二)
Shell学习之Bash变量详解 目录 Bash变量 Bash变量注意点 用户自定义变量 环境变量 位置参数变量 预定义变量 Bash变量 用户自定义变量:在Bash中由用户定义的变量. 环境变量:这 ...
- python 数据类型详解
python数据类型详解 参考网址:http://www.cnblogs.com/linjiqin/p/3608541.html 目录1.字符串2.布尔类型3.整数4.浮点数5.数字6.列表7.元组8 ...
- python线程详解
#线程状态 #线程同步(锁)#多线程的优势在于可以同时运行多个任务,至少感觉起来是这样,但是当线程需要共享数据时,可能存在数据不同步的问题. #threading模块#常用方法:'''threadin ...
- python数据类型详解(全面)
python数据类型详解 目录1.字符串2.布尔类型3.整数4.浮点数5.数字6.列表7.元组8.字典9.日期 1.字符串1.1.如何在Python中使用字符串a.使用单引号(')用单引号括起来表示字 ...
随机推荐
- Python编写“求一元二次方程的解”
#求一元二次方程的解 import math def equation(a,b,c): h=b*b-4*a*c #一元二次方程的解,百度来的 if h>=0: x1=(-b+math.sqrt( ...
- [Docker02]Docker_registry
部署Docker仓库 Docker registry #检查端口5000是否被占用 netstat -tunlp | grep 5000 # the local host ip is 172.17.0 ...
- [枚举] HDU 2019 Multi-University Training Contest 8 - Calabash and Landlord
Calabash and Landlord Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/ ...
- 8千字干货教程|java反射精讲
java反射机制精讲 目录 1. 反射机制的概念 2. 反射的基础Class类 3. 反射的用法 4. 反射的应用示例 作者简介:全栈学习笔记,一个正在努力的人 微信公众号:公众号日更,精彩美文每天推 ...
- 报错:Error instantiating class com.liwen.mybatis.bean.Employee with invalid types () or values ().
实体类默认构造方法是无参构造方法,一旦重写构造方法,默认方法就会变成重写之后的构造方法,所以该错误报的错就是实体类缺少无参构造方法
- 痞子衡嵌入式:记录i.MXRT1060驱动LCD屏显示横向渐变色有亮点问题解决全过程(提问篇)
大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是i.MXRT1060上LCD横向渐变色显示出亮点问题的分析解决经验. 痞子衡前段时间在支持一个i.MXRT1060客户项目时遇到了LCD ...
- python接口调用把执行结果追加到测试用例中
python操作excel的三个工具包如下,注意,只能操作.xls,不能操作.xlsx. xlrd: 对excel进行读相关操作 xlwt: 对excel进行写相关操作 xlutils: 对excel ...
- python实现十大经典排序算法
Python实现十大经典排序算法 代码最后面会给出完整版,或者可以从我的Githubfork,想看动图的同学可以去这里看看: 小结: 运行方式,将最后面的代码copy出去,直接python sort. ...
- 浅谈服务架构“五脏六腑”之Spring Cloud
本文将从 Spring Cloud 出发,分两小节讲述微服务框架的「五脏六腑」: 第一小节「服务架构」旨在说明的包括两点,一服务架构是什么及其必要性:二是服务架构的基本组成.为什么第一节写服务架构而不 ...
- [vijos1234]口袋的天空<最小生成树>
题目链接:https://vijos.org/p/1234 白天刚刚写完prim的算法,晚上就心血来潮的打了一道最小生成树的题 虽然有题解说可以用prim做,但是这道题明显是加最小的边,感觉krusk ...