Python连载(0001): 变量

什么是变量?

“变量”就像计算机内存中的一个箱子,其中可以存放一个值。

众所周知,计算机最重要的功能就是“计算”。可计算总要有数据源的,数据源就存放在内存里。那么,内存是什么?我们可以把内存想象成很多紧密放置的箱子,每个箱子里都可以存放数据。与此同时,每个箱子上都有一个编号,这个编号就叫做内存地址。当我们想要获取数据的时候,就可以使用编号找到对应的箱子。可对于绝大多数人来说,记忆数字编号难度太大,于是,人们想到一个办法:当需要向编号为n的箱子里放数据的时候,先给这个箱子起一个“小名”,然后再把数据放进箱子。这样,通过这个“小名”就可以直接找到对应的箱子,从而得到数据。这个“小名”就称为“变量名”,箱子里的数据被称为“变量值”。

赋值语句

我们刚才讨论了”变量“(箱子)、“变量名”(箱子的小名)、“变量值”(箱子里的数据),那怎么实现“给箱子起个小名,把数据放进箱子”呢?这就要用到赋值语句

赋值语句的语法很简单:变量名 = 值

假设现在需要把老王的年龄(老王今年40岁)保存到内存中,那年龄40就是要保存的数据。既然是存年龄,那就用age作为变量名,于是就得到下面的赋值语句:

age = 40

那可能有人会问,我们还没指定把40这个数据存放在内存的哪个位置啊?没事,这个事儿计算机帮我们做了,我们只使用“变量名”就足够了。

变量的命名规则

给变量起名字也是个技术活,得符合下面的规则:

  • 变量名只能是字母数字下划线的任意组合。

  • 变量名的第一个字符不能是数字

  • Python语言里有一些关键字,不能用来当做变量名。Python语言的关键字如下:

    ['False', 'None', 'True', '__peg_parser__', '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']
    
  • 变量名是区分大小写的,也就是说,Dogdog对Python来说是两个不同的变量名。

上面的几条规则是强制性的,必须要遵守。下面还有一些建议规则:

  • 变量名不要太长,最好使用英文单词的缩写。(英语不好的,多求助一下百度翻译
  • 不要使用中文。没错,使用中文作为变量名是不会报错的,但显得太不专业。
  • 不要使用拼音做变量名。
  • 变量名最好能够表明变量的意义。例如,需要保存一个人的年龄时,用age肯定比用x好,最起码人家一看就知道这个变量代表什么。

常用的变量定义方式

  • 下划线式命名(官方推荐)

    该种命名方式就是用下划线将单词串联起来。

    age_of_wang = 40
    number_of_students = 80
    
  • 驼峰体

    驼峰体就是将每个单词的首字母大写,看起来有点驼峰的意思。

    AgeOfWang = 40
    NumberOfStudents = 80
    

变量的使用规则

变量一定是先定义,后调用的。

这个不难理解,你得先把东西(“数据”)放在箱子(“变量”)里,才能从箱子里取东西啊。

变量的修改

假设公司老总让你统计员工的年龄,你去问老王,老王说他今年18岁,于是你就写了个赋值语句:

age_of_wang = 18

老总一看,我去,老王这臭不要脸的明显谎报年龄,就那张老脸,怎么也得50了啊,让他把身份证拿出来看看!老王拿出身份证来一看,今年40岁…没办法,你需要把变量age_of_wang的值从18改成40啊,怎么改呢?简单,直接再写一条赋值语句就行了:

# 定义变量age_of_wang,也就是变量的第一次赋值,
age_of_wang = 18

# 经过核验,老王谎报年龄,实际是40岁,对age_of_wang重新赋值
age_of_wang = 40

常量

啥叫常量?常量就是在程序运行过程中不期望它发生改变的量。

但是,在Python中,语法上其实没有常量这个概念,也就是说,Python设计的时候就没有这玩意儿。没办法,业内人士就制定了一条君子协定:**如果变量名全部使用大写字母,那么在程序中,应该禁止改变该变量的值。**也就是说,我定义了一个变量PI:

PI = 3.1415926

别人一看,变量名全是大写字母,那使用的时候就不要修改这个变量的值了。可是,万一遇到一个杠精,非得修改:

PI = 3.1415926

# ...

# 杠精闲着没事,又加了一行代码
PI = 666

这种情况下,Python是不会报错的,我们也只能从道德层面对杠精的行为进行谴责他,没啥其他办法…

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值