『无为则无心』Python基础 — 7、Python的变量
1、变量的定义
程序中,数据都是临时存储在内存中,为了更快速的查找或使用这个数据,通常我们把这个数据在内存中存储之后,给整个数据定义一个名称,这个名称就是变量。
变量就是在存储数据的时候,当前数据所在的内存地址的一个名字而已。
2、Python变量说明
- Python中使用变量,不需要声明,直接为变量赋值即可。
- 在Python中,可以把任意数据类型赋值给变量,同一个变量可以反复赋值,而且可以是不同类型的数据。
这种变量本身类型不固定的语言称之为动态类型语言,与之对应的是静态类型语言。静态类型语言在定义变量时必须指定变量类型,如果赋值的时候类型不匹配,就会报错,例如Java是静态类型语言。和静态类型语言相比,动态类型语言更灵活,就是这个原因。 - 不能使用没有进行过赋值的变量,如果使用没有赋值过的变量,会报错
NameError: name '变量名' is not defined。# 直接执行下面命令
# 结果:NameError: name 'a' is not defined
print(a)
3、Python中定义变量
(1)定义语法
Python中定义变量的语法如下:
变量名 = 值
- 变量名自定义,要满足标识符命名规则。
- 编程中的等号是赋值的意思,程序在执行的时候是先计算等号右边的值,存储在一个内存空间中,然后把整个值存储的地址赋值给等号左边的变量。
(2)标识符定义规则
变量名、函数名、类名、包名、模块名等统称为标识符。
标识符命名规则是Python中定义各种名字的时候的统一规范,具体如下:
- 由数字、字母、下划线组成。
- 不能数字开头。
- 严格区分大小写。
- 不能使用内置关键字和保留字。
(3)内置关键字
被Python语言赋予了特定含义的一些字符,换句话说就是Python保留给自己的标识符。这些标识符我们不能再使用如果我们在进行定义,就会产生冲突。
Python中所有关键字都为小写字母,如下:
False None True and as assert 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 API里面的函数名作为标识符,因为这样会导致函数被覆盖。(以后常用就知道了)
(4)标识符命名习惯
上边是定义标识符的规则,必须要遵守。命名习惯是一种标准的规范,不遵守也没事,只是不专业。
命名习惯类型:
- 见名知义:为了提高阅读性,经常用有意义的英文单词作为标识符。
- 大驼峰:即每个单词首字母都大写,例如:
MyName。 - 小驼峰:第二个(含)以后的单词首字母大写,例如:
myName。 - 下划线:例如:
my_name。
Python具体名称规范:
- 包名:多单词组成时所有字母都小写。例如:
xxxyyyzzz - 类名接口名:多单词组成时,所有单词的首字母大写。例如:
XxxYyyZzz - 变量名和函数名:多单词组成时,第一个单词首字母小写,第二个单词开始每个单词首字母大写。例如:
xxxYyyZzz - 常量名:所有字母都大写。多单词时每个单词用下划线连接。例如:
XXX_YYY_ZZZ
4、使用变量
在Python中,先要定义一个变量,才能够使用一个变量。
#定义变量
my_name = 'TOM'
#使用变量
print(my_name)
schoolName = '小二郎的学堂'
print(schoolName)
Python解释器在执行代码的过程当中,是按照代码的书写顺序,自上而下,一行一行顺序执行的。
Tips:应用程序执行原理

- 程序 运行之前,程序是 保存在硬盘 中的。
- 当要运行一个程序时:
- 操作系统会首先让 CPU 把程序复制到 内存 中。
- CPU 执行 内存 中的 程序代码。
- 即:程序要执行,首先要被加载到内存。
Tips:Python 程序执行原理

- 操作系统会首先让 CPU 把 Python 解释器 的程序复制到 内存 中。
- Python 解释器 根据语法规则,从上向下 翻译 Python 程序中的代码。
- CPU 负责执行翻译完成的代码。
参考:https://www.liaoxuefeng.com/wiki/1016959663602400/1017063826246112
『无为则无心』Python基础 — 7、Python的变量的更多相关文章
- 『无为则无心』Python基础 — 4、Python代码常用调试工具
目录 1.Python的交互模式 2.IDLE工具使用说明 3.Sublime3工具的安装与配置 (1)Sublime3的安装 (2)Sublime3的配置 4.使用Sublime编写并调试Pytho ...
- 『无为则无心』Python基础 — 6、Python的注释
目录 1.注释的作用 2.注释的分类 单行注释 多行注释 3.注释的注意事项 4.什么时候需要使用注释 5.总结 提示:完成了前面的准备工作,之后的文章开始介绍Python的基本语法了. Python ...
- 『无为则无心』Python基础 — 9、Python字符串的编码与转义
目录 1.查看变量类型 2.转义字符 (1)转义字符说明 (2)示例 (3)常用转义字符对照表 3.字符编码 (1)字符编码介绍 (2)Python中的字符编码 (3)编码格式应用于不同场景 提示:上 ...
- 『无为则无心』Python基础 — 10、Python字符串的格式化输出
目录 1.什么是格式化输出 2.Python格式化输出的五种方式 方式一:字符串之间用+号拼接 方式二:print()函数可同时输出多个字符串 方式三:占位符方式 方式四:f格式化方式(推荐) 方式五 ...
- 『无为则无心』Python基础 — 12、Python运算符详细介绍
目录 1.表达式介绍 2.运算符 (1)运算符的分类 (2)算数运算符 (3)赋值运算符 (4)复合赋值运算符 (5)比较运算符 3.逻辑运算符 拓展1:数字之间的逻辑运算 拓展2:Python中逻辑 ...
- 『无为则无心』Python序列 — 24、Python序列的推导式
目录 1.列表推导式 (1)快速体验 (2)带if的列表推导式 (3)多个for循环实现列表推导式 2.字典推导式 (1)创建一个字典 (2)将两个列表合并为一个字典 (3)提取字典中目标数据 3.集 ...
- 『无为则无心』Python函数 — 29、Python变量和参数传递
目录 1.Python的变量 (1)Python变量不能独立存在 (2)变量是内存中数据的引用 (3)注意点 2.了解变量的引用 3.Python的参数传递(重点) (1)示例 (2)结论 (3)总结 ...
- 『无为则无心』Python基础 — 8、Python中的数据类型(数值、布尔、字符串)
目录 1.数据类型介绍 2.数值型(Number) 3.布尔型(bool) 4.None(空值) 5.常量 6.字符串(String) 1.数据类型介绍 (1)什么是数据类型 在生活中,我们日常使用的 ...
- 『无为则无心』Python基础 — 14、Python流程控制语句(while循环语句)
目录 1.什么是循环结构 2.while循环 (1)while循环的语法 (2)while循环的应用 3.while语句的死循环 4.break和continue 5.while循环嵌套 (1)应用场 ...
- 『无为则无心』Python基础 — 16、Python序列之字符串的下标和切片
目录 1.序列的概念 2.字符串的下标说明 3.字符串的切片说明 1.序列的概念 序列sequence是Python中最基本的数据结构.指的是一块可存放多个值的连续内存空间,这些值按一定顺序排列,可通 ...
随机推荐
- OCR-Form-Tools项目试玩记录(二)产品评测
这是一篇软工课程作业博客 项目 内容 这个作业属于哪个课程 北航2020春软件工程 006班(罗杰.任健 周五) 这个作业的要求在哪里 个人博客作业-软件案例分析 个人课程目标 系统地学习软件工程理论 ...
- 26.Set
1.Set集合 1.1Set集合概述和特点[应用] 可以去除重复 存取顺序不一致 没有带索引的方法,所以不能使用普通for循环遍历,也不能通过索引来获取,删除Set集合里面的元素 1.2Set集合的使 ...
- Java Arrays.sort()重写comparator方法
先看一下接口 Arrays.sort(T[],Comparator<? super T> c); comparator要重写compare方法 compare方法大概长这样,返回值> ...
- 中间件系列一 RabbitMQ之安装和Hello World Demo
https://blog.csdn.net/hry2015/article/details/79016854 1. 概述 RabbitMQ是一个由erlang开发的AMQP(Advanced Mess ...
- 在 Apache 上使用网络安全服务(NSS)实现 HTTPS--RHCE 系列(八)
在 Apache 上使用网络安全服务(NSS)实现 HTTPS--RHCE 系列(八) 发布:linux培训 来源:Linux认证 时间:2015-12-21 15:26 分享到: 达内lin ...
- 在linux下把jsp文件 打包war格式(centos7)
在linux下把jsp文件 打成war包 chmod -R 777 /data/jdk8u242-b08/bincd /data/TongWeb61712/deployment/TestCase//d ...
- K8S的资源管理
K8S的资源管理 管理K8S资源的三种基本方法: 陈述式资源管理方法-使用cli工具进行管理. 声明式资源管理方式-主要依耐资源配置清单. GUI式资源管理方法-主要依耐图形界面. 陈述式资源管理方法 ...
- DOCKER学习_013:Dockerfile配置指令ENTRYPOINT详解
前面已经介绍了一些Dockerfile的一些指令,对于ENTRYPOINT和CMD也有介绍实验 一 ENTRYPOINT和CMD配置使用 ENTRYPOINT相当于CMD,是配置容器后的一个指令,但是 ...
- Oracle和MySQL差异总结
常用功能差异 锁差异: • Oracle锁加在数据块上 • InnoDB 是在索引上加锁,所以MySQL锁的粒度没有Oracle 精细. 导入导出: • Oracle采用EXP /IMP ,EXPDP ...
- 使用goland调试远程代码
前言 很多时候我们都在window上使用goland,并直接使用goland调试go代码. 但是很多时候我们的程序运行在Linux服务器上,虽然可以通过dlv命令行进行手动打断点调试,但是太麻烦了. ...