Python数据类型解析(基础篇)
Python语言的类型
数字类型 字符串类型 元组类型 列表类型 文件类型 字典类型
1.数字类型
Python有三种数字类型:整数,浮点数,复数
Python中的整数类型没有取值范围限制
ex:
此外,整数类型可以是十进制,16进制,2进制,8进制
Python中的浮点数类型是指带有小数点及小数的数字,有取值范围限制,若想知道自己机器上浮点数的精度范围,
只需:
这个意思是说浮点数范围从10^-308 ~ 10^308 ,小数点后可保留53位
复数类型,a+bj(J)
a,b都为浮点数类型,j/J为虚数部分
对于复数z = a + bj, z.real 可以获得实数部分, z.imag 获得虚数部分
ex:
三种类型的联系:
整数是特殊的浮点数,浮点数是特殊的复数,请看下例:
不同类型:
相同类型:
Python 允许不同类型数字一起运算,运算结果为最宽的类型。
2.字符串类型
以下都为字符串类型
1.单引号(')
'Hello Python'
2.双引号(")
在双引号中的字符串与单引号中的字符串的使用完全相同,"Hello Python"
3.三引号('''或""", 三个单引号或三个双引号)
利用三引号,可以指示一个多行的字符串。可以在三引号中自由的使用单引号和双引号。
在一个字符串中使用单引号('),使用转义符(\),例如:
使用双引号也是如此,例如:
字符串数据可以通过指定两个索引值来得到其子字符串,例如:
字符串可以通过(+)和(*)分别进行字符串的连接操作,例如:
str()函数可以把一些数据类型转化为字符串型,例如:
当然如果你前面的变量名也是str,那就不可以这样用了。
遍历字符串的字符:
下面附上字符串操作常用的一些函数:
3.元组类型
元组有三个特点:
元组之间也可以用(+)或(*)进行运算,这里就不举例了。
4.列表类型
列表类型解决了元组类型不能修改和删除的问题,接下来我们看列表类型的相关操作。
此外,我们还可以把列表当作堆栈进行使用,例如:
也可以当作队列进行使用,不过为了更快进行插入和弹出,使用collections.deque,例如:
5.文件类型
1.打开文件
首先创建一个文件并进入交互式操作模式:
$mkdir test
$cd test
$touch FileTest
$python
打开文件,以只写方式:
>>>f = open('FileTest','w')
>>>print f
得到以下结果:
参数w,可选,若没有则默认为r
'r' ,使文件只读;
'w' ,使文件只写(对于同名文件,该操作使原有文件被覆盖);
'a' ,以追加方式打开文件;
'r+' ,以读写方式打开文件;
2.文件操作
首先给刚才的文件里添加一些文本
$echo 'This is the first test.\nI can learn File Operation well!.' > FileTest
按行读取文件:
这里要说明的是,f.readline() 从文件中读取单独一行,字符串结尾会自动加上一个换行符(\n) ,如果 f.readline() 返回一个空字符串,那就表示到达了文件末尾,如果是一个空行,就会描述为 '\n'。
f.readlines()返回一个列表
给文件中写入内容,写入类型必须为字符串型:
以(w)方式打开之后,写入的内容会"覆盖"(实际上是先删除再创建一个新的同名文件)原来的内容,而以(a)方式打开则不会
ex:文件拷贝
>>>infile = open('file1name','r')
>>>outfile = open('file2name','w')
>>>lines = c = 0
>>>for line in infile:
... lines += 1
... c += len(line)
... outfile.write(line)
...
>>>infile.close()
>>>outfile.close()
3.pickle模块
这个模块方便了我们向文件里写入其他复杂的数据类型(列表,字典等)。
6.字典类型
首先解释一下字典类型,它是针对非序列集合而提供的一种数据类型。
顾名思义,通俗的讲就是提供一个键,找到对应的值(类似于查字典,通过拼音或笔画找到对应的字)。
所以字典就是 <键><值>对 的集合。
ex:
>>>Din = {"One":"1","Two":"2","Three":"3"}
字典操作:
1.给字典中添加一项新的元素
>>>Din["Four"] = "4"
2.删除一项
>>>del Din["Four"]
3.访问字典中的值(如果不存在则返回错误信息)
>>>Din["Three"]
4.字典遍历
>>>for key in Din:
... print(key+":"+str(Din[key]))
...
5.判断一个元素是否在字典中
>>>"Four" in Din
或
>>>"Four" not in Din
6.字典不支持拼接操作和重复操作,但是支持-,<,>,!=,==,>=,<=,and,or,not,字典是无序的
7.其他常用函数
ex:
Python数据类型解析(基础篇)的更多相关文章
- Python学习笔记基础篇——总览
Python初识与简介[开篇] Python学习笔记——基础篇[第一周]——变量与赋值.用户交互.条件判断.循环控制.数据类型.文本操作 Python学习笔记——基础篇[第二周]——解释器.字符串.列 ...
- 深度学习入门者的Python快速教程 - 基础篇
5.1 Python简介 本章将介绍Python的最基本语法,以及一些和深度学习还有计算机视觉最相关的基本使用. 5.1.1 Python简史 Python是一门解释型的高级编程语言,特点是简单明 ...
- [WebKit内核] JavaScript引擎深度解析--基础篇(一)字节码生成及语法树的构建详情分析
[WebKit内核] JavaScript引擎深度解析--基础篇(一)字节码生成及语法树的构建详情分析 标签: webkit内核JavaScriptCore 2015-03-26 23:26 2285 ...
- [资料分享]Python视频教程(基础篇、进阶篇、项目篇)
Python是一种开放源代码的脚本编程语言,这种脚本语言特别强调开发速度和代码的清晰程度.它可以用来开发各种程序,从简单的脚本任务到复杂的.面向对象的应用程序都有大显身手的地方.Python还被当作一 ...
- [WebKit内核] JavaScriptCore深度解析--基础篇(一)字节码生成及语法树的构建
看到HorkeyChen写的文章<[WebKit] JavaScriptCore解析--基础篇(三)从脚本代码到JIT编译的代码实现>,写的很好,深受启发.想补充一些Horkey没有写到的 ...
- PE文件解析 基础篇
PE文件解析 基础篇 来源 https://bbs.pediy.com/thread-247114.htm 前言 之前学习了PE格式,为了更好的理解,决定写一个类似LoadPE的小工具. 编译器是VS ...
- Python学习笔记——基础篇【第一周】——变量与赋值、用户交互、条件判断、循环控制、数据类型、文本操作
目录 Python第一周笔记 1.学习Python目的 2.Python简史介绍 3.Python3特性 4.Hello World程序 5.变量与赋值 6.用户交互 7.条件判断与缩进 8.循环控制 ...
- python之路基础篇
基础篇 1.Python基础之初识python 2.Python数据类型之字符串 3.Python数据类型之列表 4.Python数据类型之元祖 5.Python数据类型之字典 6.Python Se ...
- Python学习笔记——基础篇【第四周】——迭代器&生成器、装饰器、递归、算法、正则表达式
目录 1.迭代器&生成器 2.装饰器 a.基本装饰器 b.多参数装饰器 3.递归 4.算法基础:二分查找.二维数组转换 5.正则表达式 6.常用模块学习 #作业:计算器开发 a.实现加减成熟及 ...
随机推荐
- 天梯赛 L3-002. 堆栈
思路:这里的线段树维护一个区间里面出现数的个数,对于Pop,push单点更新一下就好. #include<stdio.h> #include<iostream> #includ ...
- 在论坛中出现的比较难的sql问题:25(字符串拆分3)
原文:在论坛中出现的比较难的sql问题:25(字符串拆分3) 最近,在论坛中,遇到了不少比较难的sql问题,虽然自己都能解决,但发现过几天后,就记不起来了,也忘记解决的方法了. 所以,觉得有必要记录下 ...
- CSS中@import url()
@import url( )总结: 1.import url( )机制是不同于link的,link是在加载页面前把CSS加载完毕,而@import url( )则是读取完文件后加载,所以会出现一开始没 ...
- VS.NET(C#)--2.6_ASP.NET服务器控件层次结构
ASP.NET服务器控件层次结构 语法 <asp:ControlType Id="ControlID" Rubat="Server" Property=& ...
- win7用驱动精灵安装了bcm94352ac蓝牙驱动后还是不能用蓝牙的解决方法
驱动精灵安装了驱动后,设备管理器处显示Bluetooth USB,但是没法用蓝牙,找不到蓝牙图标,后来在华硕官方下载了win7的Broadcom 蓝牙驱动程序装上之后就好了
- JavaScript (内置对象及方法)
JavaScript中的对象分为3种:内置对象.浏览器对象.自定义对象 JavaScript 提供多个内置对象:Math/Array/Number/String/Boolean... 对象只是带有属性 ...
- Saas软件更新以及小程序更新的教训
Saas软件即使版本更新多次,也要兼顾老客户,兼容旧功能. 对于小程序调用的接口,无法保证客户会更新小程序,因此需要兼容使用旧版本小程序的客户,更不能删除接口.
- django.http.response中HttpResponse 子类
HttpResponse的子类 Django包含许多处理不同类型的HTTP请求的 HttpResponse 子类.像 HttpResponse 一样,这些类在 django.http 中. HttpR ...
- python 循环结构(for-in)
循环结构(for-in) 说明:也是循环结构的一种,经常用于遍历字符串.列表,元组,字典等 格式: for x in y: 循环体 执行流程:x依次表示y中的一个元素,遍历完所有元素循环结束 示例1: ...
- Android笔记(三十二) Android中线程之间的通信(四)主线程给子线程发送消息
之前的例子都是我们在子线程(WorkerThread)当中处理并发送消息,然后在主线程(UI线程)中获取消息并修改UI,那么可以不可以在由主线程发送消息,子线程接收呢?我们按照之前的思路写一下代码: ...