首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python入门学习篇(1)-变量

1、变量的概念

变量(variable)是学习python初始时,就会接触到的一个新的知识点,python是一种动态类型语言,在赋值的执行中可以绑定不同类型的值,这个过程叫做变量赋值操作,赋值同时确定了变量类型。

所谓动态语言、静态语言,其实就是针对变量的类型而言的。

静态语言比较常见的如Java和C#,你在定义变量的时候就得说好了它是什么类型如:int num;

动态语言就不必,为啥不必呢,因为无所谓啊。动态语言的变量可以随时改变类型哦,比如:

>>>a=6 #此时a是整数类型

>>>a=6.1 #此时a是浮点数类型

>>>a=’hello’#此时a是字符串类型

OK,那么好像看起来,动态语言更灵活,更牛逼一点。是的,是更灵活,但是既然要到运行的时候才能确定怎么存储、使用这些变量,肯定会在某些方面(比如性能)上有弱点吧,金无赤足,各有所长嘛。

变量的操作3步曲:创建、写入、读取.

首次输入变量的名称即完成了变量的创建。变量的写入,是通过单等号,将内容赋值给变量,其实这个操作过程就是赋值,即把整型数字6赋值给了变量a,用单等号(赋值符)来连接变量名和值,之后就可以在表达式中引用这个新变量了(变量可以看做是一个存储数据的容器,我们可以把数据内容存储到变量中,并在需要的时候读取使用)

>>>a*3

18

注意:在这个表达式中,先读取变量a的值,然后引用参与运算;在赋值时,值是什么数据类型,就决定了这个变量的类型,变量名引用了数值的同时也引用了它的类型。type()函数可以查看一个变量的类型,如下:

>>> type(a)

#int是用于定义整数类型变量的标识符

2、变量命名规范

1、变量名可以包括字母、数字、下划线,但是数字不能做为开头。例如:name1是合法变量名,而1name就不可以。

2、系统关键字不能做变量名使用

3、除了下划线之个,其它符号不能做为变量名使用

4、Python的变量名是除分大小写的,例如:name和Name就是两个变量名,而非相同变量哦。

3、Python中变量的保存

Python中变量是如何切换类型的呢?其实真正牛的不是Python变量,而是Python语言的解释执行器。

举个例子:解释器可以这么运作。首先在内存中地址为XXXX的地方存了一个变量1,然后运行到a=1时,发现整数1要赋值给变量a,所以解释器就知道了变量a是整型,然后变量a就保存在地址XXXX。

然后运行到a=1.1,解释执行器在内存中地址为YYYY的地方存了1.1,然后知道了a是浮点类型,最后变量a就保存在地址YYYY。

既然解释器每次在保存变量值(指向地址)时,都要识别值的类型并关联到变量,所以效率肯定会低一点吧。(如果解释执行器是这么运作的话,Python可是有不止一种解释执行器,所以也得看开发解释执行器的人的设计啦)

上面这段话比较复杂,直接略过,之前有提到变量a被保存在地址XXXX,YYYY,好奇的小伙伴肯定想破解谜团吧,解密大戏即将上演,嘎嘎。

4、变量id() is() 与 ==

id()函数非常好理解,就是求变量地址,例如,注意同样是值1,可能对应的地址是不同的,因为在内存为1分配地址时分配了不同地址:

了解了id(),那么is()和==的区别就好理解了。==就是看值相等不,相等就返回True。而is()就是看id相等不,相等就返回True。

举个例子:

True#True,表示变量a与变量b值是相等的

>>> a is b

False#False,地址肯定是不一样的

>>> type(a)

>>> type(b)

5642880

>>> a is c

True

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180603G01Q3800?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券