计算机等级考试 水平考试 微软认证 思科认证 Oracle认证 Linux认证

外语类四 六 级 商务英语 公共英语 GRE GMAT 托 福 雅 思

资格类:公 务 员 报 关 员 司法考试 导游考试 会计职称 注册会计师

学历类:考研入学 自学考试 成人高考 法律硕士 MBA/MPA

首页>>Oracle认证>>:用Oracle和Python武装你的头脑(4)

用Oracle和Python武装你的头脑(4)

编写脚本

现在,您已经以交互方式试用了解释器,下面您将准备编写一个 Python 脚本来处理整个文件。使用 Ctrl-D(在 Unix/Linux 中)或 Ctrl-Z(在 Windows 中)退出 Python 解释器,然后创建一个文本文件 - 称之为 readInitOra.py。

initFile = open('init_orcl.ora', 'r')

initParams = {}

rawTextLine = initFile.readline()

while rawTextLine:

param, val = rawTextLine.strip().split('=')

initParams[param] = val

rawTextLine = initFile.readline()

print initParams

在阅读此代码时,您很可能想到“命令结尾的分号哪去了?BEGIN 和 END 语句以及用于标记块的大括号哪去了?”实际上,Python 并不使用这些符号。按照惯例,几乎所有编程人员都使用换行符分隔命令,并使用缩进指示代码块,以便用户可以阅读代码。同时,Python 以外的大多数语言都要求他们使用一套不同的符号与编译器或解释器进行通信。使用两套符号将使代码杂乱不堪,并将产生一个很大的风险 - 显示给人眼的符号可能与显示给计算机的符号不同步,从而产生另人难以理解的错误。而 Python 可以像用户那样读取代码,从而消除了混乱并避免出现风险。

下面我们来看看代码操作。在操作系统提示符(而非 Python 解释器提示符)下,键入

c:\> python readInitOra.py

{'UNDO_MANAGEMENT':'AUTO', 'COMPATIBLE': '9.2.0.0.0',

'DB_BLOCK_SIZE':'8192', 'FAST_START_MTTR_TARGET' : '300',

'SGA_MAX_SIZE':157286400, 'SHARED_POOL_SIZE': '50331648'}

如果您习惯将 readInitOra.py 中的所有行缩进几个空格,则将使 Python 混淆并产生一个语法错误。缩进指示代码块,因此在不指示代码块的情况下请不要进行缩进。返回并确保不在块中的每一行都从第 1 列开始。

您实际上需要在多个位置使用此代码,因此我们将其从简单的脚本改进为接受参数的函数定义。

def read(fileName):

initFile = open(fileName, 'r')

initParams = {}

rawTextLine = initFile.readline()

while rawTextLine:

param, val = rawTextLine.strip().split('=')

initParams[param] = val

rawTextLine = initFile.readline()

return initParams


热 点 导 读

 

特 别 推 荐

 

最 新 文 章

 

最 新 文 章

·用Oracle和Python武装你的头脑(1)
·用Oracle和Python武装你的头脑(2)
·用Oracle和Python武装你的头脑(3)

2003-2005 www.51kao.com 考试信息网