Python的变量、常量

开发 后端
变量从字面意思可以理解成:是变化的量。但是这样理解和没有理解貌似没有什么区别,我们把变量两个字拆分看看。

 

一、什么是变量?

变量从字面意思可以理解成:是变化的量。但是这样理解和没有理解貌似没有什么区别,我们把变量两个字拆分看看。

我们首先来想想看你是怎么认识我的,今天来你会认识我,明天来你还会认识我。那你是不是记住我这个人的典型特征,比如我的名字Nick、体重140、身高180…世间万物我们是不是都是这样去认识的?毫无疑问是的。既然人能识别世间万物,那么我们之前一直把计算机想象成人,那是不是说计算机也能识别世间万物呢?对的。计算机通过记录我们的状态认识我。这就是量的概念。

  •  量:记录现实世界中的状态,让计算机能够像人一样去识别世间万物。

今天我可能180,明年我是不是可能就是185了(5cm不过分),那这种状态是不是会发生变化。

  •  变:现实世界中的状态是会发生改变的。

二、为什么要有变量?

对于现实世界,一定是要有一个变量来描述世间万物的。但是计算机为什么也要有变量的概念呢?其实计算机中程序的运行就是一系列状态的变化,如王者荣耀中账号等级0级到30级、废铁到王者;植物大战僵尸中僵尸打着打着就死了。

三、定义变量

既然知道了变量是什么玩意,那我们如何在Python中定义变量呢? 

  1. name = 'nick'  
  2. age = 19  
  3. gender = 'male' 
  4. height = 180  
  5. weight = 140 

四、变量的组成

从我们上米昂定义的变量可以看到,变量的组成分为以下三个部分:

  1.  变量名:变量名用来引用变量值,但凡需要用变量值,都需要通过变量名。
  2.  赋值符号:赋值
  3.  变量值:存放数据,用来记录现实世界中的某种状态。 
  1. name  # 报错,无任何意义  
  2. age = 18  
  3. height = 185  
  4. print(age)  
  5. print(height)  
  6. 18  
  7. 185 

五、变量名的命名规范

如果对于一个变量,你想怎么命名就怎么命名,那样没有任何问题,顶多就是晚上老板检查代码后,你第二天不用去公司了。 

  1. sfasfewfasdfa='nick'  
  2. print(sfasfewfasdfa)  
  3. nick 

一定要记住,定义一个变量其实就是在记录现实世界中的的状态,并且存永远不是目的,取才是目的。所以变量的命名应该满足以下三个规范:

  1.  变量的命名应该能反映变量值所描述的状态,切记不可用中文
  2.  变量名必须用字母数字下划线组合,并且变量名的第一个字符不能是数字。
  3.  关键字不能声明为变量名 
  1. ['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'] 

六、变量名的两种风格

6.1 驼峰体 

  1. AgeOfNick = 19  
  2. print(AgeOfNick) 

6.2 下划线(推荐) 

  1. age_of_nick = 19  
  2. print(age_of_nick) 

注意:以上两种变量名的风格,推荐使用下划线的风格。

常量

变量是变化的量,常量则是不变的量。python中没有使用语法强制定义常量,也就是说,python中定义常量本质上就是变量。如果非要定义常量,变量名必须全大写。 

  1. AGE_OF_NICK = 19  
  2. print(AGE_OF_NICK)  
  3. 19  
  4. AGE_OF_NICKAGE_OF_NICK = AGE_OF_NICK + 1 
  5. print(AGE_OF_NICK)  
  6. 20 

如果是常量,那就没必要更改,所以python就只制定了一个规范,而没指定常量的语法,因此常量也是可以修改的,但不建议。

在c语言中有专门的常量定义语法,const int age = 19; 一旦定义age为常量,更改age即会报错。 

 

责任编辑:庞桂玉 来源: 马哥Linux运维
相关推荐

2021-04-07 09:02:49

Go 语言变量与常量

2011-12-15 09:00:51

PHP 7

2010-03-22 13:49:20

2021-11-06 10:18:30

Python变量常量

2011-06-15 15:36:19

PHP变量常量

2024-01-12 09:00:22

Swift常量数据类型

2020-10-22 13:33:48

Java基础入门

2010-04-01 14:14:56

Oracle绑定变量

2024-06-12 13:57:00

2023-05-04 07:33:39

Rust变量常量

2024-01-25 11:42:00

C++编程指针常量

2018-10-26 15:54:16

JavaClass常量池

2010-03-18 16:17:29

Python 变量类型

2010-02-01 14:28:37

Python全局变量

2024-05-29 08:49:22

Python全局变量局部变量

2023-10-17 07:57:56

Python数据类型

2010-03-09 15:00:33

Python变量

2010-03-09 14:12:55

Python全局变量

2023-03-28 09:58:56

Python变量

2011-06-01 14:01:45

JavaString
点赞
收藏

51CTO技术栈公众号