python指定变量类型_Python-变量类型
1.Python变量类型
变量存储在内存中的值。这就意味着在创建变量时会在内存中开辟一个空间。
基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中。
因此,变量可以指定不同的数据类型,这些变量可以存储整数,小数或字符。
2.变量赋值
Python 中的变量赋值不需要类型声明。
每个变量在内存中创建,都包括变量的标识,名称和数据这些信息。
每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。
等号(=)用来给变量赋值。
等号(=)运算符左边是一个变量名,等号(=)运算符右边是存储在变量中的值。例如:
a = 100b= 0.1c= 1000.00
print(a,b,c)-----结果-----
100 0.1 1000.0ps:你会发现Python可以自动识别变量的类型,但是可以从b和c的结果可以看出,Python默认浮点型为小数点的后一位
3.多个变量赋值
Python允许你同时为多个变量赋值。例如:
a = b = c = 1,2,"hello world!"
print(a,b,c)-----结果------(1, 2, 'hello world!') (1, 2, 'hello world!') (1, 2, 'hello world!')
a,b,c= 1,2,"hello world!"
print(a,b,c)-----结果------
1 2 hello world!
4.标准数据类型
Python有五个标准的数据类型:
Numbers(数字)
String(字符串)
List(列表)
Tuple(元组)
Dictionary(字典)
4.1.Numbers(数字)
Python支持四种不同的数字类型:
int(有符号整型)
long(长整型[也可以代表八进制和十六进制])
float(浮点型)
complex(复数)
数字数据类型用于存储数值。
他们是不可改变的数据类型,这意味着改变数字数据类型会分配一个新的对象。
当你指定一个值时,Number对象就会被创建:
var1 = 100address1=id(var1)
var2= 100address2=id(var2)print("var1'address="+str(address1))print("var2'address="+str(address2))-------结果-------var1'address=8791242541216
var2'address=8791242541216
var1= 200address1=id(var1)
var2= 200address2=id(var2)print("var1'address="+str(address1))print("var2'address="+str(address2))-------结果-------var1'address=8791242544416
var2'address=8791242544416
var1= 200address1=id(var1)
var2= 200address2=id(var2)
var3=var2
address3=id(var3)print("var1'address="+str(address1))print("var2'address="+str(address2))print("var3'address="+str(address3))-------结果-------var1'address=8791246542112
var2'address=8791246542112
var3'address=8791246542112
上面的id()是地址函数,从上面的代码可以看出var1和var2都赋值100时,他们的地址都是一样的,可以说明var1和var2引用了同一个对象,即100,也就是说内存中对于1只占用了一个地址,而不管有多少个引用指向了它,都只有一个地址值,只是有一个引用计数会记录指向这个地址的引用到底有几个而已。
我们进行var1=200赋值时,发现var1的地址值变了,虽然还是var1这个引用,但是其地址值却变化了,后面的var2=200以及var3=var2,使得var1、var2和var3都引用了同一个对象,即200,所以地址值都是一样的。当var1和var2都被赋值200后,100这个对象已经没有引用指向它了,所以100这个对象占用的内存,即8791242541216地址要被“垃圾回收”,即100这个对象在内存中已经不存在了。
之所以称为不可变数据类型,这里的不可变可以理解为var1引用的地址处的值是不能被改变的,也就是8791242541216地址处的值在没被垃圾回收之前一直都是100,不能改变,如果要把var1赋值为200,那么只能将var1引用的地址从8791242541216变为8791246542112,相当于var1= 200这个赋值又创建了一个对象,即200这个对象,然后var1、var2、var3都引用了这个对象,所以int这个数据类型是不可变的,如果想对int类型的变量再次赋值,在内存中相当于又创建了一个新的对象,而不再是之前的对象。
python指定变量类型_Python-变量类型相关推荐
- python指定变量类型_Python 变量类型详解
变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中. 因此,变量可以指定不同的数据类型,这些变量可以存储整 ...
- python max取下标_Python 变量类型总结
变量存储在内存中的值.这就意味着在创建变量时会在内存中开辟一个空间. 基于变量的数据类型,解释器会分配指定内存,并决定什么数据可以被存储在内存中. 因此,变量可以指定不同的数据类型,这些变量可以存储整 ...
- 4j是合法python数字类型_python数字类型
在python中,数据采用了对象的形式(无论是python内置对象还是使用python工具和像C语言自行创建的对象). Python数字类型工具:整数和浮点数 复数 固定精度的十进制数 有理分数 集合 ...
- python输出变量地址_Python——变量
笑虎:千行代码入门Pythonzhuanlan.zhihu.com 函数的参数www.liaoxuefeng.com Python学习之变量的作用域 - fireporsche - 博客园www ...
- python公共变量声明_Python变量声明
繁星coding 好的,首先要做的事情.Python中没有"变量声明"或"变量初始化"这样的东西.简直就是我们所谓的"任务",但应该只是称之 ...
- python的元祖类型_python元组类型
元组类型简介 使用括号包围的数据结构是元组(tuple).例如: >>> (1,2,3) (1, 2, 3) >>> T = (1,2,3,) >>&g ...
- python列表实现原理_Python动态类型实现原理及过程解析
在python中,我们使用变量时,并没有声明变量的存在和类型.类型是在运行过程中自动决定的. a = 3 python将会执行三步去完成上面这个请求. 1.创建一个对象代表3 2.创建一个变量a,如果 ...
- python布尔测试对象_python布尔类型和逻辑运算
布尔类型 python中True表示真,False表示假,它们是布尔类型:1 2>>> type(True) 在python中,bool的True和False是数值1和0的字符串表示 ...
- python变量回收_Python变量的引用、拷贝和回收机制
1.Python中变量的引用 Python中的变量都是指针,都是某个内存对象的引用. python不允许程序员选择采用传值还是传引用.Python参数传递采用的肯定是"传对象引用" ...
- python定义变量参数_Python变量定义与使用
前言 对于任何编程语言都存在对数据的处理,比如数字.字符串.字符等,我们可以直接使用数据,同时还可以将数据保存到变量中,方便以后使用.什么是变量?在任何语言里面都一样,可以把它看成是个小容器,专门用来 ...
最新文章
- CodeForces 392C Yet Another Number Sequence 矩阵快速幂
- libsvm学习(二)——第一次体验libsvm(转)
- angular 拦截器
- spring mvc 返回json数据的四种方式
- noip2014生活大爆炸版石头剪刀布
- struts2 - ation 访问 Servlet api
- Spring的事务管理难点剖析(5):联合军种作战的混乱
- 跳出多重循环_代码里的俄罗斯套娃 | 07 多重循环
- 3D数学之镜像、切变
- Unity粒子特效出现慢
- Kindle 2 初探
- 4.OpenCV视频处理
- 《爱情,最幸福的信仰》吴若权
- iOS11以及iPhone X遇到的相关问题
- 线性代数考研笔记(一)
- 模拟Android内存不足 activity回收 值保存 状态恢复
- 梅西的命运才是真正的人生
- 多家银行同城跨行取款手续费上涨到4元
- 软件工程专业考研是否更有利于找工作?
- 魔方内存盘的使用体验