Python之路

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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之路的主要内容,如果未能解决你的问题,请参考以下文章

[原创]java WEB学习笔记61:Struts2学习之路--通用标签 property,uri,param,set,push,if-else,itertor,sort,date,a标签等(代码片段

python成长之路第三篇_正则表达式

python成长之路第三篇_正则表达式

机器学习之路: python 实践 word2vec 词向量技术

常用python日期日志获取内容循环的代码片段

python 有用的Python代码片段