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 程序执行原理

  • 操作系统会首先让 CPUPython 解释器 的程序复制到 内存 中。
  • Python 解释器 根据语法规则,从上向下 翻译 Python 程序中的代码。
  • CPU 负责执行翻译完成的代码。

参考:https://www.liaoxuefeng.com/wiki/1016959663602400/1017063826246112

『无为则无心』Python基础 — 7、Python的变量的更多相关文章

  1. 『无为则无心』Python基础 — 4、Python代码常用调试工具

    目录 1.Python的交互模式 2.IDLE工具使用说明 3.Sublime3工具的安装与配置 (1)Sublime3的安装 (2)Sublime3的配置 4.使用Sublime编写并调试Pytho ...

  2. 『无为则无心』Python基础 — 6、Python的注释

    目录 1.注释的作用 2.注释的分类 单行注释 多行注释 3.注释的注意事项 4.什么时候需要使用注释 5.总结 提示:完成了前面的准备工作,之后的文章开始介绍Python的基本语法了. Python ...

  3. 『无为则无心』Python基础 — 9、Python字符串的编码与转义

    目录 1.查看变量类型 2.转义字符 (1)转义字符说明 (2)示例 (3)常用转义字符对照表 3.字符编码 (1)字符编码介绍 (2)Python中的字符编码 (3)编码格式应用于不同场景 提示:上 ...

  4. 『无为则无心』Python基础 — 10、Python字符串的格式化输出

    目录 1.什么是格式化输出 2.Python格式化输出的五种方式 方式一:字符串之间用+号拼接 方式二:print()函数可同时输出多个字符串 方式三:占位符方式 方式四:f格式化方式(推荐) 方式五 ...

  5. 『无为则无心』Python基础 — 12、Python运算符详细介绍

    目录 1.表达式介绍 2.运算符 (1)运算符的分类 (2)算数运算符 (3)赋值运算符 (4)复合赋值运算符 (5)比较运算符 3.逻辑运算符 拓展1:数字之间的逻辑运算 拓展2:Python中逻辑 ...

  6. 『无为则无心』Python序列 — 24、Python序列的推导式

    目录 1.列表推导式 (1)快速体验 (2)带if的列表推导式 (3)多个for循环实现列表推导式 2.字典推导式 (1)创建一个字典 (2)将两个列表合并为一个字典 (3)提取字典中目标数据 3.集 ...

  7. 『无为则无心』Python函数 — 29、Python变量和参数传递

    目录 1.Python的变量 (1)Python变量不能独立存在 (2)变量是内存中数据的引用 (3)注意点 2.了解变量的引用 3.Python的参数传递(重点) (1)示例 (2)结论 (3)总结 ...

  8. 『无为则无心』Python基础 — 8、Python中的数据类型(数值、布尔、字符串)

    目录 1.数据类型介绍 2.数值型(Number) 3.布尔型(bool) 4.None(空值) 5.常量 6.字符串(String) 1.数据类型介绍 (1)什么是数据类型 在生活中,我们日常使用的 ...

  9. 『无为则无心』Python基础 — 14、Python流程控制语句(while循环语句)

    目录 1.什么是循环结构 2.while循环 (1)while循环的语法 (2)while循环的应用 3.while语句的死循环 4.break和continue 5.while循环嵌套 (1)应用场 ...

  10. 『无为则无心』Python基础 — 16、Python序列之字符串的下标和切片

    目录 1.序列的概念 2.字符串的下标说明 3.字符串的切片说明 1.序列的概念 序列sequence是Python中最基本的数据结构.指的是一块可存放多个值的连续内存空间,这些值按一定顺序排列,可通 ...

随机推荐

  1. Java常用类详解

    目录 1. String类 1.1 String的特性 1.2 String字面量赋值的内存理解 1.3 String new方式赋值的内存理解 1.4 String 拼接字面量和变量的方式赋值 1. ...

  2. 虚拟机快速下载安装配置aarch64-linux-gnu-gcc工具链

    方式一:软件仓库安装 此方法不用自己去配置交叉编译工具链 1.查看本地仓库有支持哪些版本哪些 输入命令: apt-cache search aarch64 2.下载安装 gcc-8-aarch64-l ...

  3. 使用ldap客户端创建zimbra ldap用户的格式

    cat << EOF | ldapadd -x -W -H ldap://:389 -D "uid=zimbra,cn=admins,cn=zimbra" dn: ui ...

  4. lsblk         查看分区和磁盘

    lsblk                                                                             查看分区和磁盘 df -h     ...

  5. split命令_Linux split命令:切割(拆分)文件

    <Linux就该这么学>是一本基于最新Linux系统编写的入门必读书籍,内容面向零基础读者,由浅入深渐进式教学,销量保持国内第一,年销售量预期超过10万本.点此免费在线阅读. 15 分钟之 ...

  6. zabbix监控之自定义监控

    自定义监控node1数据库状态,并设置报警 编辑agent客户端的userparameter_mysql.conf 文件,最后一行添加自定义监控内容 [root@node1 ~]# cd /etc/z ...

  7. Maven知识点一览

    Maven 介绍和搭建 介绍 Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建,报告,和文档的软件项目管理工具. 环境搭建 网址:https://maven.apache ...

  8. STM32之HAL库、标准外设库、LL库(STM32 Embedded Software)-(转载)

    STM32 Embedded Software  工作以来一直使用ST的STM32系列芯片,ST为开发者提供了非常方便的开发库.到目前为止,有标准外设库(STD库).HAL库.LL库 三种.前两者都是 ...

  9. Linux进阶之LAMP和LNMP动态网站搭建

    一.什么是LAMP LAMP=Linux Apache Mysql/MariaDB PHP/Perl/Python 这些软件都是开源免费的软件,几个程序各自是独立的,经常为了达到我们需要的效果而协同工 ...

  10. linux route命令的使用详解-(转自小C爱学习)

    route命令用于显示和操作IP路由表.要实现两个不同的子网之间的通信,需要一台连接两个网络的路由器,或者同时位于两个网络的网关来实现.在Linux系统中,设置路由通常是 为了解决以下问题:该Linu ...