您的位置:首页 > 编程语言 > Python开发

python练习5

2017-07-15 02:13 239 查看
1.文件过滤. 显示一个文件的所有行, 忽略以井号( # )开头的行. 这个字符被用做Python , Perl, Tcl, 等大多脚本文件的注释符号.

附加题: 处理不是第一个字符开头的注释.

文件内容:

# 大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱

# 对文件进行操作:打开文件-> 操作 -> 关闭文件

大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱

对文件进行操作:打开文件-> 操作 -> 关闭文件

$$大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱

**对文件进行操作:打开文件-> 操作 -> 关闭文件

对文件进行操作     # 打开文件-> 操作 -> 关闭文件



def grep_file(filename):

    f = open(filename, 'r')

    for eachLine in f:

        if eachLine[0] != '#':

            print eachLine

    f.close()

grep_file('file')

结果:

大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱

对文件进行操作:打开文件-> 操作 -> 关闭文件

$$大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱

**对文件进行操作:打开文件-> 操作 -> 关闭文件

对文件进行操作     # 打开文件-> 操作 -> 关闭文件



附加题:

def grep_file(filename):

    f = open(filename, 'r')

    for eachLine in f:

        if '#' in eachLine:

            r = eachLine.find('#')

            if r > 0:

                if eachLine[r-1:r+2]!= r"'#'" and eachLine[r-1:r+2]!=r'"#"':

                    print eachLine[:r]

            else:

                print eachLine

        else:

            print eachLine

    f.close()

grep_file('file')

结果:

# 大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱

# 对文件进行操作:打开文件-> 操作 -> 关闭文件

大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱

对文件进行操作:打开文件-> 操作 -> 关闭文件

$$大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱

**对文件进行操作:打开文件-> 操作 -> 关闭文件

对文件进行操作     





2.文件比较. 写一个比较两个文本文件的程序. 如果不同, 给出第一个不同处的行号和列号

文件一:

In [1]: abs(-10)

Out[1]: 90

In [2]: abs

Out[2]: <function abs>

文件二:

In [1]: abs(-10)

Out[1]: 10

In [2]: abs

Out[2]: <function abs>

def Compare_file(filename1,filename2):

    f1 = open(filename1, 'r')

    f2 = open(filename2, 'r')

    rownumber = 0

    colnumber = 0

    line1 = 'hello'

    while line1 != '':

        line1 = f1.readline()

        line2 = f2.readline()

        if line1 == line2:

            rownumber += 1

        else:

            for char1 in line1:

                if char1 == line2[colnumber:colnumber + 1]:

                    colnumber += 1

                else:

                    print 'rownumber is ', rownumber + 1, 'colnumber is ', colnumber + 1

                    colnumber = 0

                    rownumber += 1

                    break

    f1.close()

    f2.close()

Compare_file('file1','file2')

结果:rownumber is  2 colnumber is  9




内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python