您的位置:首页 > 其它

读书笔记:文件write及换行显示

2016-06-06 20:08 197 查看
代码一:

<span style="font-size:14px;">#coding=utf-8

def main():
#'''
'''filename=raw_input("Please input file name: ")
f=open(filename, 'r')
alllines=f.readlines()
f.close
for eachline in alllines:
print eachline
'''

filename=raw_input("Please input file name: ")
f=open(filename, 'w')
while True:
aline=raw_input("Enter a line ('.' to quit):")
if aline !=".":
f.write('%s' % aline)
else:
break
f.close()

if __name__ == '__main__':
main()</span>

运行后结果如下:

you must be happyI belive I can fly!

可知所有文件都写到了同一行。

修改代码如下(代码二):

<span style="font-size:14px;">#coding=utf-8
import os
def main():
#'''
'''filename=raw_input("Please input file name: ")
f=open(filename, 'r')
alllines=f.readlines()
f.close
for eachline in alllines:
print eachline
'''

filename=raw_input("Please input file name: ")
f=open(filename, 'w')
while True:
aline=raw_input("Enter a line ('.' to quit):")
if aline !=".":
f.write('%s%s' % (aline, os.linesep))
else:
break
f.close()

if __name__ == '__main__':
main()</span>运行结果如下:

中间多了一空行

再修改代码,代码三:
<span style="font-size:14px;">#coding=utf-8
#import os
def main():
#'''
'''filename=raw_input("Please input file name: ")
f=open(filename, 'r')
alllines=f.readlines()
f.close
for eachline in alllines:
print eachline
'''

filename=raw_input("Please input file name: ")
f=open(filename, 'w')
while True:
aline=raw_input("Enter a line ('.' to quit):")
if aline !=".":
f.write('%s\n' % aline)
else:
break
f.close()

if __name__ == '__main__':
main()</span>

运行结果如下:

换行显示,中间无空行。

总结如下:

1. open文件时,只输入文件名,不填写路径,默认为当前代码所在路径;

2.write写入不存在的文件时,首先创建对应名称的文件;write已存在的文件时,会覆盖文件中已有内容;

3.raw_input()不会保留用户输入的换行符,调用write() 方法时,必须加上换行符;

4.os.linesep会在换行的同时,增加一个空行;

5.程序使用句号(.)作为文件结束的标志,是因为在键盘上很难输入一个EOF(end of life)字符。

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