前言
上周偷了点懒,周四到周末断更了,后来思考了下,前一阵儿的更新频率达到了日日更,虽然每章小知识都很详细。。但是同学建议进度加快,emmm....然后我决定拉长更新周期,两到三天更新一次,同时相对的进度也会加快,正是因为python的基础数据类型很重要,所以我才总结的非常细致!后续的小课堂中,我认为重要的知识点依然会写的很细,而那些介绍就能看懂的知识点,简单的总结下即可了!立下一个flag,当我总结完所有python知识点时,接下来就是好玩的各种实战篇文章(例如分析微信朋友圈的数据.....)扑面而来的节奏!
变量
变量: 在编程语言中有着变量的概念,而相对应的python中定义变量是一件非常容易的事情,还是老规矩,将现实生活中的例子引入计算机世界来加以解释。高中我们所学过的数学有个方程式的概念: y = x + 1 而这样的公式中x就是变量! 对应到python中,一个不确定的数据的命名就是变量。(看例子就瞬间理解了!)
冲啊!IDLE:
![961bd04c780c357c9dd58021c377714a.png](https://i-blog.csdnimg.cn/blog_migrate/c8df9bc9a14b7ee181c0902feb46da81.jpeg)
= : 等号在这里不是数学上的概念。 在编程世界,=代表的是赋值,理解为给python的基本数据取名字的方式即可!
在编程中,变量的名称是需要注意的,一定要见名知意!尽量去用原生的英文单词去表示变量,避免用汉语拼音来命名。。。。这是编程界的忌讳!举个例子吧,我现在要定义一个叫“学习python”的变量名:
错误×:xuexi_python = '我要学习python'正确√:study_python = '我要学习python'
Tips: python中,变量名称可以由字母、数字、下划线组成。其中数字不能在第一位,python自身关键字不能用于变量名。python 的变量名定义是区分大小写的!定义A和a是不一样的。
验证:
![82d57d050b6d5c5d8a25ab53051c9a86.png](https://i-blog.csdnimg.cn/blog_migrate/d936c979ed69b8403b9910da76909239.jpeg)
使用关键词命名的(以type为例)错误:
![39aac69d819856455bdfdaf4a1e1a880.png](https://i-blog.csdnimg.cn/blog_migrate/15e7133e62e114778be7ae1beab415cc.jpeg)
通过print()进行查看:
![9f3493201ddcdb66be6ff5cec1b6e818.png](https://i-blog.csdnimg.cn/blog_migrate/8c48be2a4ba17e7ef57bcf1018f8ea29.jpeg)
你不知道的变量小知识点
先来看个问题,有如下代码:
将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)>>> 此处你觉得会输出什么?
结论:
![57d89a5b9a87c97af950bca6cedfa9d3.png](https://i-blog.csdnimg.cn/blog_migrate/013bf0e7e4b1a1fdcad822b54dcdbd35.jpeg)
用图解释上面两种问题:
![60c5c363c58d2f06303b41751e37d351.png](https://i-blog.csdnimg.cn/blog_migrate/8e8afe757f08697470ef479722d380e1.jpeg)
第一段代码对应上图,三步,清晰明了解释了int的值操作。划重点:值不可变!
![7544773833321e4ca82da64340da9e3d.png](https://i-blog.csdnimg.cn/blog_migrate/7df0e672d520cdf890a6298e4f18869b.jpeg)
第二段代码对应上图,三步,清晰明了解释了list的值操作。划重点:值可变!
Tips: 在python中(Java也有!其他语言也有...),基础数据变量类型是区分值类型和引用类型的。而int、str、tuple属于值类型(内容不可变!),list、set、dict属于引用类型(内容可修改!)。
如何理解可变不可变?继续用实例来说明!
下面的代码,你认为会输出什么呢?之前说过字符串不可变!你觉得这样的代码正确么!
>>> a = 'hello'>>> a = a + 'python'
实验不可变性与可变性:
![8d510a81a08200d0f5e54011f989a4a2.png](https://i-blog.csdnimg.cn/blog_migrate/ff7b18f76975979da651c2bed9633e4f.jpeg)
引入一个python新方法:
id(x): x是变量,通过id可以查看x对应的内存地址。
![b53962a9673d31406d4bf257ab54b370.png](https://i-blog.csdnimg.cn/blog_migrate/e89f8ec0ecaeff941437031635bd9f9d.jpeg)
再来看看tuple 和 list:
![d3deea7168c32d331f994d596bc72ce0.png](https://i-blog.csdnimg.cn/blog_migrate/8b6a9d6de99a718a4ee0b8a5bee449a2.jpeg)
小结
本次小课堂主要介绍了变量的概念,以及变量的命名规范(切忌拼音用法,使用原生英语哟!),对于变量的重点:值类型和引用类型,了解了这两点,在编程语言中是通用的知识点!通过id()可以查看相应变量的内存地址,用于判断变量是否属于同一个元素。
有想学python的同学,欢迎关注公号:migezatan.(咪哥杂谈)