无法使用python3对文件执行I / O.

时间:2015-02-18 02:00:17

标签: python python-3.x

我一直在尝试使用常规表达式打开文件并对其进行一些编辑。代码似乎很好,但我仍然收到一个错误,说io.UnsupportedOperation:不可读

代码如下:

import re

def fun(o_date):
    print(o_date)
    l = o_date.split('-')
    r=[]
    r[0]='20'+l[0]
    if l[1]=='Jan':
        r[1]='01'
    elif l[1]=='Feb':
        r[1]='02'
    elif l[1]=='Mar':
        r[1]='03'
    elif l[1]=='Apr':
        r[1]='04'
    elif l[1]=='May':
        r[1]='05'
    elif l[1]=='Jun':
        r[1]='06'
    elif l[1]=='Jul':
        r[1]='07'
    elif l[1]=='Aug':
        r[1]='08'
    elif l[1]=='Sep':
        r[1]='09'
    elif l[1]=='Oct':
        r[1]='10'
    elif l[1]=='Nov':
        r[1]='11'
    elif l[1]=='Dec':
        r[1]='12'
    r[2]=l[0]
    r1 = str(r[0])+'-'+str(r[1])+'-'+str(r[2])
    return r1

if __name__ == "__main__":
    print("hello 0.1")
    f = open('Finance.sql','w')
    print("hello 1.1")
    r = f.read()
    print("hello1")
    s = re.compile(r'\d{2,2}-[a-zA-Z]{3-3}-\d{2,2}')
    for i in r:
        print("hello : ", i)
        re.sub(s,fun,i)

Finance.sql文件只包含表中的插入命令。

感谢任何帮助。感谢

1 个答案:

答案 0 :(得分:1)

以下行表示您只想写入您的文件(请注意'w'):

f = open('Finance.sql','w')

打开文件进行读写(非截断,python3):

f = open('Finance.sql','r+')

您应该使用with来干净地打开和关闭文件(例如this post

您确定要以这种方式打开.sql文件吗?