Python开发基础总结(六)配置文件读取+异常+类型系统+文件

简介: Python开发基础总结(六)配置文件读取+异常+类型系统+文件

一、配置文件读取的使用


1、    使用模块ConfigParser。实例如下:

conf = ConfigParser()
conf.read("snmp_agent.ini")
print(conf.get("main", "log_level"))
print(conf.getint("main", "ne_agent_port"))
print(conf.get("main", "ne_agent_qip"))
复制代码

二、异常的使用


1、    尽量少用。它会使程序难以理解,而且还会发生不可预知的情况,比如异常的发生使程序的状态变为一个未知状态。

2、    可以寻找替代方案。

3、    程序非常重要,不可以停止,可以在主循环包装在异常处理中运行。

4、    打印出异常的信息,供后面的定位:log.error(traceback.format_exc())

5、    raise在引发异常的时候,可以传递引发一场的额外数据。形式如下:

raise Exception, 1

捕获方法:

except CallExit, e:

e就是那个额外数据1。(但是奇怪的是它的类型不是1)

6、    如何捕获一个异常,进行处理,然后在把它抛出:

except :
        for flet in fletList:
            flet.throw()
        info = sys.exc_info()
        raise info[0], info[1], info[2]
复制代码

7、    如何使用异常才是Pythonic的做法?这个要看一下。

三、类型系统


1、    类型也是对象。比如:inttype = int,然后,n = inttype(‘256’),这样可以把字符串转化为int值。

2、    另外,是否可以把字符串转化为关键字,或者对象?比如,一个变量,abc,是否可以通过’abc’来引用?

OS的使用

os中有很多可以直接利用的东西,比如,判断文件是否存在,删除文件等。这样可以不用再执行shell命令。

os.rremove(path):删除文件

os.system(‘ls’);执行shell命令

四、文件的使用


1、    打开使用函数open,模式和linux c类似。有一个不同的地方时,可以选择,直接操作磁盘还是操作内存。

2、    readline可以读取一个文件的一行。

3、    readlines:返回每一个列的列表。对应writelines。

4、    文件迭代器:

f = open(‘fliename’)
for line in f:
    process(line)
    f.close()
复制代码

或者更简洁的:

for line in open(filename):
        process(line)
复制代码

5、    文件迭代器的使用:

如果文件很大,readlines可能会占用过多的内存。所以,Python提出一种类似于惰性求值的惰性迭代。

有两种方案:fileinput和文件迭代器:

import fileinput
for line in fileinput.input(filename)
        process(line)
复制代码

文件迭代器:

f = open(filename)
for line in f:
        process(line)
复制代码

6、    如何判断文件是否存在:

import os
os.path.isfile('/home/keepshell')
os.path.exists('/home/keepshell')
复制代码

7、    如何判断目录是否存在:

import os
os.path.isdir('/home')
os.path.exists('/home')


作者:zhulin1028

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

相关文章
|
2天前
|
人工智能 开发者 Python
Python 中的断点类型详解
Python 中的断点类型详解
8 2
|
2天前
|
数据可视化 Python
Python的分子模拟动态促进DF Theory理论对二进制硬盘系统的适用性
Python的分子模拟动态促进DF Theory理论对二进制硬盘系统的适用性
|
2天前
|
JSON JavaScript 数据格式
python遍历目录文件_结合vue获取所有的html文件并且展示
python遍历目录文件_结合vue获取所有的html文件并且展示
4 0
|
4天前
|
数据采集 存储 人工智能
【Python+微信】【企业微信开发入坑指北】4. 企业微信接入GPT,只需一个URL,自动获取文章总结
【Python+微信】【企业微信开发入坑指北】4. 企业微信接入GPT,只需一个URL,自动获取文章总结
17 0
|
4天前
|
人工智能 机器人 API
【Python+微信】【企业微信开发入坑指北】3. 如何利用企业微信API给微信群推送消息
【Python+微信】【企业微信开发入坑指北】3. 如何利用企业微信API给微信群推送消息
7 0
|
4天前
|
缓存 人工智能 API
【Python+微信】【企业微信开发入坑指北】2. 如何利用企业微信API主动给用户发应用消息
【Python+微信】【企业微信开发入坑指北】2. 如何利用企业微信API主动给用户发应用消息
8 0
|
4天前
|
存储 Python
Python变量类型
Python变量类型
8 0
|
9天前
|
存储 API Python
python之代理ip的配置与调试
python之代理ip的配置与调试
|
9天前
|
存储 Python
用Python实现批量下载文件——代理ip排除万难
用Python实现批量下载文件——代理ip排除万难
|
9天前
|
前端开发 Java Go
开发语言详解(python、java、Go(Golong)。。。。)
开发语言详解(python、java、Go(Golong)。。。。)