代码来自《Python核心编程》。
输入文件名,用户可以输入文字,然后写入文件。很简单的文件操作。
记录一下使用到的几个函数:
os.linesep:获取当前系统的换行符,Linux和windows系统的换行符并不一致,使用这个函数保证了程序的正常运行。
os.path.exists(fileName):判断文件是否存在。
open(fileName,"w"/"r"):返回文件对象,记得要Close。
fobj.writelines(["%s%s"%(x,ls) for x in all])
这句代码很奇怪,我不太理解为什么能这样写,为什么ls能替换掉all中的换行符呢。
#author="ACE_J"
'maketextfile.py---create text file'
import os
ls=os.linesep
#get filename
while True:
fileName=input("Input a file name:>")
if os.path.exists(fileName):
print("The file is already exits")
else:
break
#get file text
all=[]
print("Enter '.' to quit")
while True:
entry=input(">")
if entry!=".":
all.append(entry)
else:
break
#write lines to file
fobj=open(fileName,"w")
fobj.writelines(["%s%s"%(x,ls) for x in all])
#fobj.writelines(all)
fobj.close()
print("Done!")