虽然现在讲有点早,但不难理解。将以下文本复制到记事本中,命名为t1.py放在c::\python27目录下。
在运行中输入cmd,cd c:\python27\,然后输入python t1.py
1 创建一个文件,并在控制台写入行到新建的文件中。
import os
ls = os.linesep
#get filename
while True:
fname = raw_input('Enter filename:')
if os.path.exists(fname):
print "ERROR: '%s' already exists" % fname
else:
break
#get file content (text) lines
all = []
print "\nEnter lines('.' by itself to quit).\n"
#loop until user terminates input
while True:
entry = raw_input('>')
if entry == '.':
break
else:
all.append(entry)
#write lines to file with proper line-ending
fobj = open(fname, 'w')
fobj.writelines(['%s%s' % (x, ls) for x in all])
fobj.close()
print 'DONE!'
os.linesep表示行结尾标志, 用本地变量名ls代替它节省了时间,并减少了消耗系统资源.用 raw_input()读入文件名用列表all[]来保存每一行文本(它们暂时在内存中).最后创建文件后,用writelines()把内存中的行写入打开的文件中.
结果如下图所示:
2.这是一个读特定文件内容的小程序.
#get filename
fname = raw_input('Enter filename: ')
print
#attempt to open file for reading
try:
fobj = open(fname, 'r')
except IOError, e:
print "*** file open error:", e
else:
#display contents to the screen
for eachLine in fobj:
print eachLine,
fobj.close()
结果如下: