1.文件过滤. 显示一个文件的所有行, 忽略以井号( # )开头的行. 这个字符被用做Python , Perl, Tcl, 等大多脚本文件的注释符号.
附加题: 处理不是第一个字符开头的注释.
文件内容:
# 大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱
# 对文件进行操作:打开文件-> 操作 -> 关闭文件
大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱
对文件进行操作:打开文件-> 操作 -> 关闭文件
$$大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱
**对文件进行操作:打开文件-> 操作 -> 关闭文件
对文件进行操作 # 打开文件-> 操作 -> 关闭文件
![](https://img-blog.csdn.net/20170715021227282?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvV1lfbWluaQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
def grep_file(filename):
f = open(filename, 'r')
for eachLine in f:
if eachLine[0] != '#':
print eachLine
f.close()
grep_file('file')
结果:
大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱
对文件进行操作:打开文件-> 操作 -> 关闭文件
$$大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱
**对文件进行操作:打开文件-> 操作 -> 关闭文件
对文件进行操作 # 打开文件-> 操作 -> 关闭文件
![](https://img-blog.csdn.net/20170715021247948?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvV1lfbWluaQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
附加题:
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')
结果:
# 大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱
# 对文件进行操作:打开文件-> 操作 -> 关闭文件
大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱
对文件进行操作:打开文件-> 操作 -> 关闭文件
$$大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱
**对文件进行操作:打开文件-> 操作 -> 关闭文件
对文件进行操作
文件一:
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')
附加题: 处理不是第一个字符开头的注释.
文件内容:
# 大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱
# 对文件进行操作:打开文件-> 操作 -> 关闭文件
大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱
对文件进行操作:打开文件-> 操作 -> 关闭文件
$$大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱
**对文件进行操作:打开文件-> 操作 -> 关闭文件
对文件进行操作 # 打开文件-> 操作 -> 关闭文件
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')
结果:
# 大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱
# 对文件进行操作:打开文件-> 操作 -> 关闭文件
大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱
对文件进行操作:打开文件-> 操作 -> 关闭文件
$$大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱
**对文件进行操作:打开文件-> 操作 -> 关闭文件
对文件进行操作
文件一:
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