python语言中的数据类型
一、内存管理
1.python解释器的垃圾回收机制
垃圾:当一个值上没有人绑定任何变量名时(当引用计数为0),该值就是一个垃圾。
python解释器运行时会检测值的引用计数,当引用计数=0该值会被清除释放。
age=18 #18的引用计数此时为1
x=age #18的引用计数此时为2
del x #18的引用计数此时变回1
del #解除变量与值的引用关系
2.变量值的三个特征
id:反映的是值的内存地址
type:数据的类型
值:本身
age=18
print(id(age))
print(type(age))
3.is与==比较
is:比较数据的id,也就是值的内存地址
==:比较数据的值
x='name:dengyifan'
y='name:dengyifan'
x==y #运行结果显示true
x is y #运行结果显示false
#总结:值的id一样,值一定相同;值相同,id可能不同
4.可变类型与不可变类型变量
可变类型:值改变,id不变,证明就是在改变原值
不可变类型:值改变,id也变,证明不是改变原值,是创建了新值,原值就是不可变型
#可变类型
l=['a','b','c']
print(id(l)) #运行结果为list l的id
l[0]='A'
print(id(l)) #运行结果为新的表格l=['A','b','c']的id,两个id一样
#不可变类型
x=10
print(id(x)) #10的内存地址
x=11
print(id(x)) #11的内存地址
#两个变量的前后id不一样
二、python2中与用户交互
1.python3中只有一个input 特点:用户输入任意内容都存成str类型。
2.python2中有raw_input与python3中input功能一模一样
但input输入要求用户必须输入一个明确的类型,输入深恶类型都存成什么类型。
三、数据类型的基本使用
分作用、定义、使用方法说明
1.int整形
abc=10 #age=int(10)
#整数数字作为值
2.float浮点型
作用:记录身高、体重、工资等带有小数的数字
salary=3.1 #salary=float(3.1)
#print(type(salary))
#float
#数字类型=int+float
3.str字符串
作用:用来记录描述性质状态,例如名字、性别、职业等
定义:在单引号('...'),双引号(''...''),三引号('''...''',""".....""")之间包含的一系列字符
x='abc' #x=str('abc')
y="mingyang" #y=str("mingyang")
z='''xiaojinmao''' #z=str('''xiaojinmao''')
使用:"+"表示字符串的拼接,但仅限于str类型直接相加
"*"后只能跟数字,表示复制字符串的次数
print('abc'+'def') #运行结果为abcdef
print('abc'*3) #运行结果为abcabcabc
4.list 列表类型
作用:用来记录多个值,用索引对应值
定义:在[ ]内用逗号分隔开多个任意类型的值
L=[1,2.1,'abc',['a','b','c']] #L=list(......)
#列表内的值可以是任意类型
#列表的调取:
print(L[0]) #print()表示输出变量L的列表
#[0]表示引用列表的第1个值 计算机位置从0开始
5. dict 字典类型
作用:用来记录多个值,用key对应value,其中key对value有描述性的功能
定义:在{}内,用逗号分割开多的元素,每一个元素都是key:value的形式,其中value可以是任意形式类型,而key通常是str类型
('key':value)。
s={'x':1,'y':2.1,'z':['a','b'],'m':{'c':'mingyang','d':'gongmingxian'}}
#使用
print(s['x'])
print(s['m']['c'])
print(s['z'][1])
6.布尔类型 (true false)
1.所有数据类型自带布尔类型
2.布尔值为false的数据类型有:0,none,空
7.none类型
python语言中的数据类型的更多相关文章
- python语言中的数据类型之字典
数据类型 字典类型dict 用途:记录多个值,列表是索引对应值,而字典是key对应值,其中key对value有描述性 定义方式:在{ }用逗号分隔开多个元素,每个元素都是key:value形式,其中k ...
- python语言中的数据类型之集合
数据类型 集合类型 set 用途:1.关系运算 2.去重 定义方式:在{}内用逗号分隔开多个元素,但元素的特点是 1.集合内元素必须是不可变类型 2.集合内元素无序 集合内元素不能 ...
- python语言中的数据类型之元组
数据类型 元组 tuple 元组:不可变类型 用途:元组就是一个不可变的列表,当需要存不改动的值时可用元组 定义方式:在()内用逗号分隔开多个任意类型的元素 t=(1,2.2,'aa',( ...
- python语言中的数据类型之列表
数据类型及内置方法 列表: list 可变类型,有序 用途:用来记录多个值(同属性) 定义方式:在[ ]内用逗号分隔开多个任意类型的值 l=['a','b','c'] #l=list(['a' ...
- Android For JNI(二)——C语言中的数据类型,输出,输入函数以及操作内存地址,内存修改器
Android For JNI(二)--C语言中的数据类型,输出,输入函数以及操作内存地址,内存修改器 当我们把Hello World写完之后,我们就可以迈入C的大门了,今天就来讲讲基本的一些数据类型 ...
- Python语言中各种进制相互转换
目录 Python语言中各种进制相互转换 将二进制.八进制.十进制的数分别转换成十进制的方法 将十进制转换成二进制.八进制.十六进制 Python语言中各种进制相互转换 本文参考自https://ww ...
- Python语言中的关键字(自己做的读书笔记)
电脑配置:联想笔记本电脑 windows8系统 Python版本:2.7.8 本文章撰写时间:2015.1.1 作者:陈东陈 阅读说明: 1.本文都是先解释,后放图片: 2.文中斜体部分要么为需要输入 ...
- python语言中的编码问题
在编程的过程当中,常常会遇到莫名其妙的乱码问题.很多人选择出了问题直接在网上找答案,把别人的例子照搬过来,这是快速解决问题的一个好办法.然而,作为一个严谨求实的开发者,如果不从源头上彻底理解乱码产生的 ...
- 了解 Python 语言中的时间处理
python 语言对于时间的处理继承了 C语言的传统,时间值是以秒为单位的浮点数,记录的是从1970年1月1日零点到现在的秒数,这个秒数可以转换成我们日常可阅读形式的日期和时间:我们下面首先来看一下p ...
随机推荐
- windows下GitHub的安装、配置以及项目的上传过程详细介绍
概要 本文主要介绍了在Win10系统中安装Github终端.如何配置安装好的Git终端以及如何利用Git终端将自己的项目上传到远程服务器中 操作必备 win10系统电脑一台.良好的互联网连接.GitH ...
- [UE4]声音系统概述
一.只能使用wav格式的声音 二.wav声音可以直接播放到打开的UE4编辑器内打开的Content文件夹.也可以直接导入 三.在Content中的文件夹的声音资源可以直接拖放到场景中,会以3D场景声音 ...
- Zabbix利用orabbix插件监控Oracle数据库
一.jdk的安装(Orabbix Server) 1.软件解压,放到固定位置 1 2 tar zxf jdk-8u51-linux-x64.tar.gz mv jdk1.8.0_51/ /usr/lo ...
- crm 任务 状态
ActivityPointer 取消状态:statecode = 2 statuscode = 6 已完成状态:statecode = 1 statuscode = 5
- 第6章 静态路由和动态路由(3)_RIP动态路由协议
5. RIP动态路由协议 5.1 RIP协议(Routing Information Protocol) (1)是一个距离矢量路由选择协议.选择最佳路径的标准是跳数,如果到达目标网络经过的路由器最少, ...
- 软硬链接ln
1:软链接 -- 快捷方式 I:ln -s 文件名 快捷方式的名字 文件名:使用绝对路径 II':目录也可以创建链接 2:硬链接 I: ln 文件名 硬链接的名字
- Linux下Mysql自启动
如果你都是按照默认配置安装的那么只要按照如下步骤就可以了 1.cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql 将服 ...
- Android轮询器,RxJava Interval;
基于RxJava实现轮询器,配合Retrofit处理网络请求轮询很好用,其它的一些轮询也都可以使用像Bannre图之类的: implementation 'io.reactivex.rxjava2:r ...
- JavaScript之函数,词法分析,内置对象和方法
函数 函数定义 JavaScript中的函数和Python中的非常类似,只是定义方式有点区别. // 普通函数定义 function f1() { console.log("Hello wo ...
- replace实现替换全部
方法: string.replace(new RegExp(oldString,"gm"),newString)) gm g=global, m=multiLine , 大致上方法 ...