首页 > 其他分享 >变量 和 注释

变量 和 注释

时间:2023-06-08 14:33:08浏览次数:37  
标签:变量 对象 代码 注释 点击 变量名 age

#### # 变量 和 注释

之前我们就说过:Python语言中,所有的 数据 都被称之为 对象。每个整数、小数、字符串,还有我们后面要学的 字典、元组、列表 等, 都是对象。
在Python程序运行的时候,这些对象 其实就是 内存中的一段数据 。
我们的程序是经常要操作这些内存中的数据对象的,比如打印整数对象的值到屏幕上,或者把字符串对象内容写入文件。
那么我们的程序语言如何告诉计算机,我们 要操作(使用)的 是哪个数据对象 呢?
比如下面的语句
'你好,今天天气真不错'
解释器运行完这条语句,就会产生一个字符串对象,放在计算机内存中的某个位置。
如果后面的程序代码要把这个 字符串对象 打印到屏幕上,怎么引用它呢?是再写一遍吗?像这样?

点击查看代码
'你好,今天天气真不错'
print('你好,今天天气真不错')
显然不对,如果是这样,解释器执行第2行语句的时候,可能会重新创建一个字符串对象。这样,第一行语句是无效的。 而且有的时候字符串对象不是直接定义在代码里面的,而是运行的时候动态生成的,比如用户输入的字符串。 问题在于,我们怎么在代码中 使用 一个内存中的数据对象?

## 变量的概念

大家来思考一个问题:
人类语言里面,当我们提到一个人或物体, 是怎么说的?
比如说 聊天的时候,提到你的一个同学, 提到一支球队
对了,用他们的 名字。
比如: 王晓刚同学, 湖人队等等。
如果不允许使用 事物的名字, 我们的话就没法说了。
人类语言是这样,计算机语言也是一样,如果产生了数据对象,却没有给它们起名字,就像这样
43
'你好,今天天气真不错'
我们后面的代码,怎么去使用这个数字 43 和 字符串 '你好,今天天气真不错' 呢?
编程语言为了方便操作数据对象,也需要给对象起一个名字。
我们把Python语言中对象的名字, 称之为 变量名 , 有时也简称 变量。
所以Python中的变量,就是 对象的名字。

为了强调这句话的重要性,重复3遍:
变量,就是对象的名字!!
变量,就是对象的名字!!
变量,就是对象的名字!!
我们可以这样给数据对象起名字

点击查看代码
age = 43
weather = '你好,今天天气真不错'
变量名 和 数据对象 之间 用 等号 连接 其中 age 就是 数字对象 43 的名字,我们也可以说:变量age的值 是数字对象 43 weather 就是 字符串对象 你好,今天天气真不错 的名字,我们也可以说:变量 weather 的值 是 字符串对象 你好,今天天气真不错 定义了变量之后,我们写代码,需要用到 这 两个对象时,就可以用它们的名字: 变量名。 比如
点击查看代码
age = 43
weather = '你好,今天天气真不错'
print(age)
print(weather)
代码执行的时候,解释器看到 变量名 就知道代表的就是对应的数据对象。 大家运行一下,可以发现,可以打印出变量所代表的 对象。 下面这行语句, 定义了 一个变量 age 值为 43,
点击查看代码
age = 43
也可以称之为: 给变量 age 赋值 为43 多个变量赋值可以这样写
点击查看代码
age = 43
height = 170

也可以同时为多个变量赋值,像这样

点击查看代码

age, height = 43, 170
变量的命名规则

变量名不是随便取的,有一定的规则。
变量名可以包含 字母、数字和下划线。
变量名可以以字母或下划线打头,比如 var1 , 或者 _var 。

但不能以数字打头, 像 1var 这样是不行的。
变量名中不能包含空格。
变量名中可以包含下划线,像下面这样都是可以的

点击查看代码
Hello, var1, age2name, age_name
变量名 不能 和 关键字 同名, 比如 as = 1997 as 是 Python的关键字,是Python语言中有特殊意义的名字, 不能用作变量名。 变量名 不要 和 内置函数 同名 比如
点击查看代码
type = 333   # 这行代码就把type这个内置函数名 重新赋值为数字对象 333 了
type(333)    # 相当于把数字对象当做函数对象进行调用,执行的时候就会出错了。

一个好的工程师,变量名不是乱取的,我们通常称之为见名知意原则,就是看到变量名,就知道变量对应的数据的含义。
比如 startTime, your_name, 这样的变量名,看了就知道是啥意思
而像 a , b , c 这样的变量名就不好,因为看了不知道是啥意思。
注意:在Python中 变量名是大小写敏感的。
不可以 在定义的时候使用 startTime 作为变量名,而在使用的时候,用 starttime 。
下面的代码就不正确

点击查看代码
startTime = '20180504'
print(starttime)
您需要高效学习,找工作? 点击咨询 报名实战班 点击查看学员就业情况 变量值的变化

对象的名字为什么叫变量呢?

因为它会变 :)

Python语言中,变量的值会可以产生变化
这里特别要注意的是,这种变化有如下两种情况
第一种:变量 重新指向了 新的对象
这种情况也被称之为 变量重新赋值,比如

点击查看代码
age = 43
age = 'hello'
运行程序的时候,第一条语句执行完的时候,变量名age就是数字对象 43 的名字。 第二条语句执行完, 变量age就不是数字对象 43 的名字了,而是字符串对象 hello 的名字了。 当第二条语句执行完, 数字对象 43 就没有变量引用它了。 注意 没有被引用的对象,解释器会在随后某个时候从内存中清除掉。一个对象可以有多个名字,比如
点击查看代码
kid = '小明'
student = kid
prettyboy = kid
这样, 小明 这个字符串对象就有3个 变量名 kid、 student 和 prettyboy

这3个名字 指向同一个对象。
如果后面的代码将其中一个变量名进行重新赋值,比如

点击查看代码

kid = '小周'
这只会改变kid 一个变量和其指向对象的 关系,并不会改变其他的变量名 student 和 prettyboy

所以,如果我们接下来执行下面的代码

点击查看代码
print(kid)
print(student)
print(prettyboy)
运行结果就是

小周
小明
小明
变量重新赋值的时候,有时候会出现下面这种写法

点击查看代码
var = var + 1 
就是把变量原来的值 增加 1,这个结果对象再赋值为变量var 数字变量的自增赋值还有一个特殊的写法,如下
点击查看代码
var = 1
var = var + 1 # 把var 的值加1 后,再赋给var, var 就变成了 2
var += 1      # 等价于 var = var + 1 ,执行后var 就变成了 3
第二种: 变量 指向的对象 本身发生了变化 这种情况,是当变量指向的对象是 可变的数据类型 ,比如:列表、字典,或者自定义的类实例对象。

这几种对象类型,我们后面会学到。
这里先给大家举个字典对象的例子

点击查看代码
info = {'name' :'小李', 'height':'180cm'}
info['height'] = '175cm'
print(info)
第二条语句就是让变量对应的字典对象的值 发生了变动

注释
虽然Python语言是一种容易理解和阅读的编程语言。

但是毕竟不是人类语言。

我们写的代码 为了 别人容易看懂, 甚至自己 以后能看懂, 就需要加入一些我们熟悉的 人话,也就是人类语言,辅助理解。

这些辅助理解的人话,就是注释。

这些人话可以是任何一种语言,只要方便你看懂代码就行,中文、英文、法文都可以。

Python的注释以 # 开头,后面的内容都是注释

比如

点击查看代码
# info 变量 记录 作者的信息,包括 名字,身高,体重
info = {'name' :'小李', 'height':'180cm'}

# 改变 作者的身高记录
info['height'] = '175cm'

print(info)  # 打印身高到屏幕上
怎么样,有了上面的注释,这些代码是不是更容易读懂了?

我们要注意的是,通常注释是不会对代码的执行有影响的(除了一些非常特殊的注释,比如代码开头的文件编码注释,以后会讲)

注释可以单独作为一行, 比如:

点击查看代码
# info 变量 记录 作者的信息,包括 名字,身高,体重
info = {'name' :'小李', 'height':'180cm'}

也可以接在代码的后面,比如: print(info) # 打印身高到屏幕上
也可以连续有多行的注释,比如:

点击查看代码
# info 变量 记录 作者的信息
# 包括 名字,身高,体重
info = {'name' :'小李', 'height':'180cm'}

标签:变量,对象,代码,注释,点击,变量名,age
From: https://www.cnblogs.com/meilinlwx/p/17466383.html

相关文章

  • 佛祖保佑,程序员注释
    //_ooOoo_////o8888888o////88"."88////(|^_^|)......
  • Java注释
    Java注释单行注释://多行注释:/**/注意:多行注释不能嵌套使用文档注释(Java特有):/***//**@author@version*/......
  • Vue3 之 响应式 API reactive、 effect源码,详细注释
    Vue3之响应式APIreactive、effect源码,详细注释目录一.实现响应式API:reactive、shallowReactive、readonly、shallowReadonly1.针对不同的API创建不同的响应式对象2.实现createReactiveObject3.实现不同的拦截函数baseHandlers.ts二.实现响应式effect1.创建响应式的......
  • 如何在nginx.conf中使用系统的环境变量(env)?
    一、需求 如果在nginx的配置中,想要使用系统中,已经存在的环境变量的值,然后在后面的配置中使用这个变量的值,在系统中的这个变量,可以是动态变化的,比如pod的名字,这个环境变量,在每次pod的启动的时候,都会会发生变化的 那么,有什么办法来实现这个需求呢? 通过使用lua模块,来实现。......
  • Python-变量交换
    前戏Python3的变量交换功能使得我们能够轻松交换两个变量的值,无需借助额外的临时变量。这种交换可以通过多重赋值语法实现,即将变量的值同时赋给另一个变量,从而实现值的交换。例如,以下代码展示了一个简单的变量交换示例:a=10b=20#交换变量的值a,b=b,aprint(a)#输......
  • 1.3. 数据类型与变量
    数据类型在Java中,数据类型决定着一个数据的取值范围和操作。Java中的数据类型主要分为两类:基本数据类型和引用数据类型。基本数据类型Java中的基本数据类型包括整型、浮点型、字符型和布尔型。整型:byte、short、int、long。对应的取值范围依次是-128127、-3276832767、-21474......
  • 第三天:环境变量搭建和运行HelloWord程序
    java开发环境搭建配置环境变量我的电脑-->右键属性点击高级系统设置选择环境变量选择系统变量,新建--》JAVA_HOME配置path变量测试是否安装成功打开cmd输入命令java-version目录含义bin:存放一些可执行程序include:JDK是由C和C++编写启动时......
  • Java 匿名内部类调用局部变量
    Java8之前,匿名内部类中使用局部变量,需要强制使用final修饰Java8开始匿名内部类使用的外部变量不再被强制用final修饰。外部变量要么是final的;要么自初始化后值不会被改变这两种都是可以在匿名内部类中使用且编译通过。但是java8只是对‘事实上final’变量可以不声明final标......
  • uniapp主题切换功能的第一种实现方式(scss变量+vuex)
    随着用户端体验的不断提升,很多应用在上线的时候都要求做不同的主题,最基本的就是白天与夜间主题。就像b站app主题切换,像这样的uniapp因为能轻松实现多端发布而得到很多开发者的青睐,但每个端的实现也有可能不同,现我把已实现的功能一点点的大家分享给大家,须要的可以参考一下,可......
  • Jenkins构建时间变量
    在jenkins的内置环境变量中,没有job的构建时间变量,要获取job的构建时间,可以安装BuildTimestampPlugin并使用 ${BUILD_TIMESTAMP} 变量,具体步骤如下:步骤1:在jenkins插件管理中安装"BuildTimestampPlugin"插件。步骤2:在jenkins系统配置(ConfigureSystem)中勾选'BuildTimes......