最近在学Python语言基础,为了以后能看懂深度学习的相关python接口,上图书馆借了本《Head First Python》,内容比较浅显,通俗易懂,暂且记下一些要点,以待日后回顾。
1.发布自己的函数到本地,方便用import引用
1)新建一个文件夹,比如叫nester,文件夹下应该有一个py文件也叫nester,用来放自己定义的各种函数,另一个py文件叫setup,是功能文件
2)setup.py的内容如下
from distutils.core import setup
setup(
name="nester"
version="1.0.0"
py_modules=["nester"] #将模块的元数据与setup函数的参数关联
author="jesse"
description="new fuction"
)
3)构建发布文件,命令为:python3 setup.py sdist
4)将发布安装到Python本地副本中:python3 setup.py install
5)使用nester模块,import nester
2.读取文件操作
1)首先导入os模块,切换至当前数据所在目录
import os
os.getcwd() #查看当前目录
os.chdir("/home/mx/chapter3") #切换到文件所在目录
2)打开文件:data=open("name.txt")
3)一行一行地读取:print(data.readline(),end="") #后面表示不换行
4)each_line.split(":",1) #调用split函数把一行内容分成两部分(形成了一个不可变列表),拆分依据是冒号
5)each_line.find(":") #调用find函数查找冒号,找不到返回-1,找到就返回索引值(字符所在位置,正数)
3.保存到文件
1)用写模式打开一个文件:out=open("data.txt","w")
2)写入数据到文件需要参数file来指定对象:print("hello",file=out)
3)完成工作后,要关闭文件:out.close()
4.提高代码健壮性
1)try......except......机制,try所在部分如果出错,就会执行except部分,except部分可以为pass语句等
2)如果异常处理代码设计为一种特定类型的错误,一定要在except后面加上错误类型,表明只会相应这种错误
ValueError 一般值运算的错误
IOError 读取错误
4)可以用finally语句扩展try的功能,也就是finally扫尾工作,总会执行,一个例子是用finally来处理文件关闭,以减少数据破坏的可能性
5)如果想知道error的具体内容,可以尝试如下代码
except IERrror as err:
print("file error:"+str(err))
6)用with处理文件相当于finally的效果,但是代码更简洁,而且不用担心文件关闭的问题,下面两份代码是等价的
try:
data=open("name.txt","w")
print("abc",file=data)
except IOError as err:
print("file error"+str(err))
finally:
if "data" in locals():
data.close()
try:
with open("anme.txt","w") as data:
print("abc",file=data)
except IOErrpr as err:
print("file error:"+str(err))
提示:with语句可以一次性定义多个文件,只需用逗号隔开即可