- 论坛徽章:
- 0
|
回复 2楼 ttvast 的帖子
eval报错
#ReadConf.py
import re#导入正则表达式模块
conf_file_url='./Config/'#配置文件所在目录
class ReadConf:
def __init__(self,file_name):
#初始化配置文件名变量
self.conf_file_name=''
#如果file_name值不为空则将其值赋给conf_file_name变量
if not re.match("\s",file_name):
if not file_name.isalnum():
self.conf_file_name=file_name
else:
return 0
def getConfFile(self):
return self.conf_file_name
def readConfText(self):
try:
conf_file=open((conf_file_url+self.conf_file_name),"r")#打开设定的配置文件
except IOError,err_msg:
print >> sys.stderr,'在打开',conf_file_name,'配置文件时出现IO异常,详细信息:',err_msg,'.'
sys.exit(1)
var_records=conf_file.readlines()#读取配置文件所有行
for var_record in var_records:
print var_record
def readConfVar(self):
try:
conf_file=open((conf_file_url+self.conf_file_name),"r")
except IOError,errmsg:
print >> sys.stderr,'在打开',conf_file_name,'配置文件时出现IO异常,详细信息:',err_msg,'.'
sys.exit(1)
var_records=conf_file.readlines()#读取配置文件所有行
for var_record in var_records:
if not (re.match("#",var_record) or re.match("\n",var_record)):
var_record=var_record.split('=')
eval(var_record[0])=var_record[1]
#TEST
#a=ReadConf('info.conf')
#a.readConfVar()
#End
错误信息:
Traceback (most recent call last):
File "test.py", line 10, in ?
from ReadConf import ReadConf
File "./ClassLib/ReadConf.py", line 45
eval(var_record[0])=var_record[1]
SyntaxError: can't assign to function call
这出的什么问题,我感觉eval()好像只能做为求值,不过在JavaScript里面的确可以用来创建变量. |
|