Python之路(二)
(1)python的内置函数(BIF)
python3中内置了70多个BIF,常用的几个有:
list():创建一个新的空列表。
range():输入次数参数,返回一个迭代固定次数的迭代器。
enumerate():创建成对数据的一个“编号列表”,从0开始。
int():讲一个字符串或另一个数转换成一个整数。
id():返回一个python数据对象的唯一标识。
next():返回一个可迭代数据结构(如列表)中的下一项。
(2)文件操作:
1、打开文件:
obj_file = open("demo.txt","w")
一般打开文件模式为“r”(读的方式),如果你需要写入内容,则使用模式“w”。open函数会返回一个该文件对象。
2、写入文件:
print("需写入文件的内容",file=obj_file)"""file参数用来指定写入哪一个文件对象中(如果没有这个file参数,print函数的作用就是将字符串打印出来)"""
3、关闭文件:
obj_file.close()"""打开的文件一定要关闭!"""
(3)使用finally扩展try:
在某些时候python的异常处理会破坏你的数据,比如在处理文件的时候,如果你将“关闭文件”的代码写入try里面,一旦close函数前面出现问题,那try代码块会直接抛出异常,从而跳过关闭文件的代码。这就会导致你的文件没有关闭,你的数据就有可能会被破坏。解决办法就是使用finally扩展try,将关闭文件的代码写在try外面,如:
try:
demo_file = open('demo.txt','w')
print("demo word",file=demo_file)
except IOError:
print('写入文件失败')
finally:
demo_file.close()
这样做,无论发生什么情况,finally中的代码都会被执行。
(4)with语句:
使用了with语句后你就不用管何时来关闭文件了,它能自动妥善的关闭一个可能打开的文件。如:
try:
with open('demo.txt',"w") as data:
print('word_data',file=data)
except IOError as err:
print('写入文件失败')
(5)isinstance函数:
它用来检查某个特定标识符是否包含某个特定类型的数据,如:
demo_list = [123,456] isinstance(demo_list,list) """检查demo_list中是否存在list类型的数据,此时当然是“true”""" demo_int = 1 isinstance(demo_int,list) """这回当然就是false了"""
(6)pickle库
pickle库的作用好比说是将数据转化成一个“通用的格式”存储在磁盘上、放在数据库里、或通过网络传输到另一个计算机里。而当我需要用到这个数据时,我可以翻过来将其变成“原来的格式”。
使用pickle:先导入pickle模块,使用dump()保存数据,以后使用时用load()恢复数据。(注:必须使用“二进制访问模式”打开这些数据),例子如下:
import pickle """导入pickle模块"""
···
list = [1,2,3,'demo'] """这是我们需要储存的数据"""
with open('demo.txt','wb') as demo_file: """wb中的“b”表示已二进制打开"""
pickle.dump(list,demo_file) """将数据dump进demo.txt文件中"""
···
"""当我们需要使用上面储存的数据时"""
with open('demo.txt','rb') as demo_file:
a_list = pickle.load(demo_file) """将demo.txt中的文件提出来"""
print(a_list) """打印出来的内容和list是一样的"""
关于pickle.dump()的语法:
pickle.dump(对象, 文件,[使用协议])
将要持久化的数据“对象”,保存到“文件”中,使用协议有3种,索引0为ASCII,1是旧式2进制,2是新式2进制协议,不同之处在于后者更高效一些。
Python之路(二)的更多相关文章
- python之路二十
一, $.ajax,这个是JQuery对ajax封装的最基础步,通过使用这个函数可以完成异步通讯的所有功能.也就是说什么情况下我们都可以通过此方法进行异步刷新的操作.但是它的参数较多,有的时候可能会麻 ...
- python之路二十一
URL - 两个 Views - 请求的其他信息 from django.core.handlers.wsgi import WSGIRequest ...
- python之路二
.pyc是个什么鬼? 1. Python是一门解释型语言? 我初学Python时,听到的关于Python的第一句话就是,Python是一门解释性语言,我就这样一直相信下去,直到发现了*.pyc文件的存 ...
- python之路(二)-collections系列
collections提供了一些比较方便的方法,使用时需要先导入模块 导入模块: import collections 1. 计数器Counter 统计参数中出现的次数,以字典的方式返回结果,参数可以 ...
- 2017年12月14日 一个Java开发的Python之路----------------(二)
说一个收获最大的,就是这个关闭流对象 之前写java读取文件的时候,最后往往要关闭流对象,以前我一直不明白,为什么,我不使用.close()方法,文件也可以读取成功,总感觉没有什么意义 原来是因为,这 ...
- Python之路系列笔记
备注:本套笔记内容来源于互联网,只做学习使用,如有侵权请联系本笔记作者. 资料内容 Python之路(一)——Python 初识 Python之路(二)——基础语法 Python之路(三)——函数 P ...
- Python之路【第十二篇】:JavaScrpt -暂无内容-待更新
Python之路[第十二篇]:JavaScrpt -暂无内容-待更新
- Python之路第一课Day9--随堂笔记之二(进程、线程、协程篇)
本节内容 进程.与线程区别 python GIL全局解释器锁 线程 语法 join 线程锁之Lock\Rlock\信号量 将线程变为守护进程 Event事件 queue队列 生产者消费者模型 Queu ...
- python之路 目录
目录 python python_基础总结1 python由来 字符编码 注释 pyc文件 python变量 导入模块 获取用户输入 流程控制if while python 基础2 编码转换 pych ...
- Python之路【第十九篇】:爬虫
Python之路[第十九篇]:爬虫 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.另外一些不常使用 ...
随机推荐
- HDU 1561 The more, The Better 树形DP
The more, The Better Problem Description ACboy很喜欢玩一种战略游戏,在一个地图上,有N座城堡,每座城堡都有一定的宝物,在每次游戏中ACboy允许攻克M ...
- 数据分析(3):ufunc
universal function 可以对数组里的每一个元素进行操作,底层是C语言实现的,在对数组运算时表现卓越 1.1 初步上手 x = np.linspace(0,2*np.pi,10) y = ...
- 友盟消息推送UPush
第一步:把下载的SDK里面的PushSDK当做Module导入自己的项目 第二步:在自己项目的build.gradle里面一定要配置applicationId defaultConfig { appl ...
- Handler(消息机制)
Demo演示 //通过Handler事件倒计时的一个操作,并判断状态 public class MainActivity extends AppCompatActivity {private Text ...
- Visual Studio vs软件下载 vax Visual Assist X VAssistX
Visual_Studio_2008_Team_Suite简体中文正式版及补丁下载链接:http://pan.baidu.com/s/1jGvOotg 密码:y6ic Visual Studio 20 ...
- SU suxcontour命令学习
- loopback 05
数据并发处理 数据库事务 事务隔离 ACID性质 原子性(Atomicity): 要么全部被执行,要么都不执行; 一致性(Consistency): 满足完整性约束; 隔离性(Isolation): ...
- 为什么使用BeagleBoneBeagleBone的优点
为什么使用BeagleBone BeagleBone的优点 当前,一个典型的基于微控制器板的售价在120元左右,而BeagleBone Black的售价在330元左右.除了更强大的处理器之外,你额外的 ...
- 05_Java异常(Exception)
1. 异常的概念 1.1什么是异常 异常指的是程序运行时出现的不正常情况. 1.2异常的层次 Java的异常类是处理运行时的特殊类,每一种异常对应一种特定的运行错误.所有Java异常类都是系统类库中E ...
- Codeforces Round #335 (Div. 2)
水 A - Magic Spheres 这题也卡了很久很久,关键是“至少”,所以只要判断多出来的是否比需要的多就行了. #include <bits/stdc++.h> using nam ...