前言

上周偷了点懒,周四到周末断更了,后来思考了下,前一阵儿的更新频率达到了日日更,虽然每章小知识都很详细。。但是同学建议进度加快,emmm....然后我决定拉长更新周期,两到三天更新一次,同时相对的进度也会加快,正是因为python的基础数据类型很重要,所以我才总结的非常细致!后续的小课堂中,我认为重要的知识点依然会写的很细,而那些介绍就能看懂的知识点,简单的总结下即可了!立下一个flag,当我总结完所有python知识点时,接下来就是好玩的各种实战篇文章(例如分析微信朋友圈的数据.....)扑面而来的节奏!

变量

变量: 在编程语言中有着变量的概念,而相对应的python中定义变量是一件非常容易的事情,还是老规矩,将现实生活中的例子引入计算机世界来加以解释。高中我们所学过的数学有个方程式的概念: y = x + 1 而这样的公式中x就是变量! 对应到python中,一个不确定的数据的命名就是变量。(看例子就瞬间理解了!)

冲啊!IDLE:




python 用新的list的非空值覆盖老的list python的list怎么赋值_变量名


= : 等号在这里不是数学上的概念。 在编程世界,=代表的是赋值,理解为给python的基本数据取名字的方式即可!

在编程中,变量的名称是需要注意的,一定要见名知意!尽量去用原生的英文单词去表示变量,避免用汉语拼音来命名。。。。这是编程界的忌讳!举个例子吧,我现在要定义一个叫“学习python”的变量名:

错误×:xuexi_python = '我要学习python'正确√:study_python = '我要学习python'

Tips: python中,变量名称可以由字母、数字、下划线组成。其中数字不能在第一位,python自身关键字不能用于变量名。python 的变量名定义是区分大小写的!定义A和a是不一样的。

验证:


python 用新的list的非空值覆盖老的list python的list怎么赋值_赋值_02


使用关键词命名的(以type为例)错误:


python 用新的list的非空值覆盖老的list python的list怎么赋值_变量名_03


通过print()进行查看:


python 用新的list的非空值覆盖老的list python的list怎么赋值_python list 赋值_04


你不知道的变量小知识点

先来看个问题,有如下代码:

将1赋值给a,再把a赋值给b,此时修改a,那么b的值是多少?>>> a = 1>>> b = a>>> a = 2>>> print(b)>>> 此处你觉得会输出什么?将列表[1,2,3,4]赋值给a,同理将a赋值给b,修改list下标第一个元素,列表a、b分别会是什么内容?>>> a = [1,2,3,4]>>> b = a>>> a[0] = '你好'>>> print(a)>>> 此处你觉得会输出什么?>>> print(b)>>> 此处你觉得会输出什么?

结论:


python 用新的list的非空值覆盖老的list python的list怎么赋值_python list 赋值_05


用图解释上面两种问题:


python 用新的list的非空值覆盖老的list python的list怎么赋值_python list 赋值_06


第一段代码对应上图,三步,清晰明了解释了int的值操作。划重点:值不可变!


python 用新的list的非空值覆盖老的list python的list怎么赋值_赋值_07


第二段代码对应上图,三步,清晰明了解释了list的值操作。划重点:值可变!

Tips: 在python中(Java也有!其他语言也有...),基础数据变量类型是区分值类型和引用类型的。而int、str、tuple属于值类型(内容不可变!),list、set、dict属于引用类型(内容可修改!)。

如何理解可变不可变?继续用实例来说明!

下面的代码,你认为会输出什么呢?之前说过字符串不可变!你觉得这样的代码正确么!

>>> a = 'hello'>>> a = a + 'python'

实验不可变性与可变性:


python 用新的list的非空值覆盖老的list python的list怎么赋值_赋值_08


引入一个python新方法:

id(x): x是变量,通过id可以查看x对应的内存地址。


python 用新的list的非空值覆盖老的list python的list怎么赋值_python_09


再来看看tuple 和 list:


python 用新的list的非空值覆盖老的list python的list怎么赋值_赋值_10


小结

本次小课堂主要介绍了变量的概念,以及变量的命名规范(切忌拼音用法,使用原生英语哟!),对于变量的重点:值类型和引用类型,了解了这两点,在编程语言中是通用的知识点!通过id()可以查看相应变量的内存地址,用于判断变量是否属于同一个元素。