python练习5
2017-07-15 02:13
239 查看
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')
结果:
# 大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱
# 对文件进行操作:打开文件-> 操作 -> 关闭文件
大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱
对文件进行操作:打开文件-> 操作 -> 关闭文件
$$大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱
**对文件进行操作:打开文件-> 操作 -> 关闭文件
对文件进行操作
![](https://img-blog.csdn.net/20170715021308299?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvV1lfbWluaQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
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
![](https://img-blog.csdn.net/20170715021327608?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')
结果:
大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱
对文件进行操作:打开文件-> 操作 -> 关闭文件
$$大象放进冰箱分几步? 打开冰箱-> 大象放进去 -> 关闭冰箱
**对文件进行操作:打开文件-> 操作 -> 关闭文件
对文件进行操作 # 打开文件-> 操作 -> 关闭文件
附加题:
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入门练习
- python基础练习1
- 计蒜客 Python练习
- python操作mysql数据库练习
- python(3) 之简单购物车购物 (练习基础语法)
- Python练习7-统计日记中最重要的词
- Python 练习实例36
- 数据科学Python基础(附示例代码和练习题目)
- python二级练习(1)
- Python之数学题目练习
- 使用StringIO 分类: python 小练习 2013-06-14 16:00 233人阅读 评论(0) 收藏
- python学习第十一章测试代码部分课后练习自己尝试的代码
- python字符类型小练习
- 生成器介绍 分类: python 小练习 python基础学习 divide into python 2013-12-31 21:17 226人阅读 评论(0) 收藏
- Python练习笔记——计算个人体重指数
- Python练习笔记——通讯录查询V1.0
- Python动手练习之购物车面对对象版本
- 猜数字 分类: python 小练习 python基础学习 2013-06-20 15:16 160人阅读 评论(0) 收藏
- python中的闭包练习
- Python小练习四——计算器