1-浅谈 python变量
浅谈 python变量
python变量概念
程序执行的过程中,很多数据都在变化的过程,我们需要一种机制把这种变化体现出来,变量是我们记录这种变化的方式。
python以及其它各种语言的变量 ,其作用都是用于存数据的,可以存动态的数据,大小,速度, 也可以存相对静态的数据,如性别 年龄等。
我们之所以需要变量去存数据,是为了在程序运行过程中后面去取出来变量的值,存的目的是为了取,为了使用。 存是手段,取才是目的。
变量的使用原则: 先定义 后引用
name = 'alin'
print(name)
alin
变量的三大组成部分
变量名字 赋值符号 变量的值
变量名的要求
上面说过 变量的作用是存数值,为了方便后面的使用,当我们在使用变量的值的时候 是通过变量名把值取出来的,所以在命令变量名的时候,要尽量做到,见名知意。什么意思那 比如我们给30个小朋友起名字 为了区分男女,女孩名字一般叫 什么花 什么芬 什么雅, 男孩叫 什么勇 什么壮,什么宏 这样当我们看到名字的时候 不用去查看详细的个人资料就能知道小朋友的性别,总结一句话
不要给小女孩起名 王大锤
python对变量名的命名也有一些具体的要求
变量名只能是 字母、数字或下划线的任意组合
像我们的名字 只能出现汉字和阿拉伯字母,你给自己起名 刘? 试试民政局的人打不打你)
变量名的第一个字符不能是数字
(就像我们的名字第一个是姓氏,python 变量的姓氏不能是数字)
关键字不能声明为变量名,常用关键字如下
故名思意 下面这些变量名python自己用了 你就别用了
import keyword
print(keyword.kwlist)['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
python的命名风格推荐小写字母+下划线的方式
age_student = 20
变量的三个特性
- id : 反映的是变量在内存中的地址,内存地址不同,则id不同,
我们可以把内存当成酒庄 变量名就是酒瓶上的名字 内存地址就是酒瓶 变量的值就是里面的酒。
name = 'alin'
print(id(name))
2683195291888
type:不同类型的值用来表示记录不同的状态
name = 'alin'
print(type(name))
<class 'str'>
value:值
name = 'alin'
print(name)
alin
变量的比较
is与==
is 比较左右两个值的身份是否相同, 酒庄举例 这辆到底是不是一瓶酒
== 比较左右两边的值是否相同 酒庄举例 这两瓶装的到底是不是一样的酒
x = 'info:age:18'
y = 'info:age:18'
print(id(x))
print(id(y))
print(x == y)
print(x is y)3019507091920
1512378137008
True
False注: pycharm中会做内存优化 需要在命令行操作验证
得出的结果x和y是相等的 但是x不是y
小整数池[-5,256] 在python中 一些常用的值 python会预先开辟出一块空间,相同的变量的值直接取用,不在另外开辟内存空间,节省内存
x = -5
y = -5
print(id(x))
print(id(y))
140718716872320
140718716872320x = -6
y = -6
print(id(x))
print(id(y))
1908425730864
1908425728176x = 256
y = 256
print(id(x))
print(id(y))
140718716864064
140718716864064x = 257
y = 257
print(id(x))
print(id(y))
2290485209904
2290485207216注意:python语法中没有常量的概念,但是在程序的开发过程中会涉及到常量的概念
AGE_OF_ALIN = 73 # 小写字母全为大写代表常量,这只是一种约定、规范
AGE_OF_ALIN='19'
print(AGE_OF_ALIN)
19
1-浅谈 python变量的更多相关文章
- 浅谈Python在信息学竞赛中的运用及Python的基本用法
浅谈Python在信息学竞赛中的运用及Python的基本用法 前言 众所周知,Python是一种非常实用的语言.但是由于其运算时的低效和解释型编译,在信息学竞赛中并不用于完成算法程序.但正如LRJ在& ...
- 开发技术--浅谈Python函数
开发|浅谈Python函数 函数在实际使用中有很多不一样的小九九,我将从最基础的函数内容,延伸出函数的高级用法.此文非科普片~~ 前言 目前所有的文章思想格式都是:知识+情感. 知识:对于所有的知识点 ...
- 开发技术--浅谈python数据类型
开发|浅谈python数据类型 在回顾Python基础的时候,遇到最大的问题就是内容很多,而我的目的是回顾自己之前学习的内容,进行相应的总结,所以我就不玩基础了,很多在我实际生活中使用的东西,我会在文 ...
- 开发技术--浅谈python基础知识
开发|浅谈python基础知识 最近复习一些基础内容,故将Python的基础进行了总结.注意:这篇文章只列出来我觉得重点,并且需要记忆的知识. 前言 目前所有的文章思想格式都是:知识+情感. 知识:对 ...
- 浅谈Python时间模块
浅谈Python时间模块 今天简单总结了一下Python处理时间和日期方面的模块,主要就是datetime.time.calendar三个模块的使用.希望这篇文章对于学习Python的朋友们有所帮助 ...
- 浅谈 PHP 变量可用字符
原文:浅谈 PHP 变量可用字符 先来说说php变量的命名规则,百度下一抓一大把:(1) PHP的变量名区分大小写;(2) 变量名必须以美元符号$开始;(3) 变量名开头可以以下划线开始;(4) 变量 ...
- 浅谈python字符串存储形式
http://blog.csdn.net/zhonghuan1992 钟桓 2014年8月31日 浅谈python字符串存储形式 记录一下自己今的天发现疑问而且给出自己现有知识有的回答. 长话短说,用 ...
- [转]浅谈Python web框架
说到web framework,Ruby的世界Rails一统江湖,而Python则是一个百花齐放的世界,各种micro-framework.framework不可胜数,不完全列表见:http://wi ...
- 浅谈Python Web的五大框架
说到Web Framework,Ruby的世界Rails一统江湖,而Python则是一个百花齐放的世界.各种micro-framework.framework不可胜数. 尽管还有一大脚本语言PHP也有 ...
随机推荐
- ASP.NET Core3.1使用IdentityServer4中间件系列随笔(五):创建使用[Code-授权码]授权模式的客户端
配套源码:https://gitee.com/jardeng/IdentitySolution 本篇将创建使用[Code-授权码]授权模式的客户端,来对受保护的API资源进行访问. 1.接上一篇项目, ...
- CSS3实现圆环进度条
摘要:圆环进度条被应用于各个场景,比如我们可以用来表示加载进度等.通常我们可以用 css3 的动画去实现. 详解 css3 实现圆环进度条 简单的画一个圆环,我们都知道如何使用 css 画一个圆环.( ...
- nodejs打包成桌面程序(exe)的进阶之路
nodejs打包成桌面程序(exe)的进阶之路 node js bat 前端 计划任务 前言:最近的研究,请大佬们细品 第一篇 - 任务计划程序篇 说真的研究到将nodejs打包成可执行的exe文件是 ...
- 用java中的Arraylist实现电话本系统管理
大致思路:创建一个电话本条目的类,在主类中实例化.用实例化的对象调用构造参数接收输入值,然后将此对象存入Arraylist的对象中,实现动态添加电话本条目. 该系统具备添加.删除.修改.查询所有和按姓 ...
- row_number()分页返回结果顺序不确定
之前通过row_number()实现分页查询时: select top [PageSize] * from ( select row_number() over (order by id desc) ...
- 【Spring注解驱动开发】AOP核心类解析,这是最全的一篇了!!
写在前面 昨天二狗子让我给他讲@EnableAspectJAutoProxy注解,讲到AnnotationAwareAspectJAutoProxyCreator类的源码时,二狗子消化不了了.这不,今 ...
- stf-多设备管理平台搭建
项目地址: https://github.com/openstf/stf 安装.使用命令 # 安装stfbrew install rethinkdb graphicsmagick zeromq pro ...
- A Walk Through the Forest (最短路+记忆化搜索)
Jimmy experiences a lot of stress at work these days, especially since his accident made working dif ...
- Opencv+Yolov3算法实现社交距离安全检测讲解和实战(Social Distance Detector)
在我们进行交流谈话时,人与人之间总要保持一定的距离,尤其是在疫情的情况下,人与人之间更要保持一定的安全距离,今天给大家来介绍一个检测社交距离的项目,实现社交距离检测器. 社交距离(Social Dis ...
- Java实现简单混合计算器
这个计算器并不是基于逆波兰实现的,而是通过简单的递归,一层一层地计算最终求得结果. 具体的图形化界面可以参考我的另外一个篇博客:基于逆波兰表达式实现图形化混合计算器,这里我只是简单的介绍一下怎样求得算 ...