文件相关方法,总结部分常用的,代码如下:
# encoding=utf-8
import os,shutil,random
for tmpdir in ("D:/data/文件操作9wer", "/文件操作9wer"):
if os.path.isdir(tmpdir):
break
else:
print("no empty directory available")
tmpdir = ""
if tmpdir:
os.chdir(tmpdir)
cwd = os.getcwd()
print ("*** current temporary directory")
print (cwd)
if os.path.exists("example"):
randNum = str(random.randint(1,88888888))
shutil.move("example", "D:/data/archive/example"+ randNum)
print ("*** remove directory:example")
print ("*** create example directory...")
os.mkdir("example")
os.chdir("example")
cwd = os.getcwd()
print ("*** new working directory:")
print (os.getcwd())
print ("*** original directory listing:")
print (os.listdir(cwd))
# 创建文件test
print("*** create test file...")
fobj = open("test", "w", encoding="utf-8")
fobj.write("foo\n")
fobj.write("foo\n")
fobj.close()
print ("*** updated directory listing:")
print (os.listdir(cwd))
# 重命名文件test为filetest.txt
print ("*** renaming 'test' to 'filetest.txt' ")
os.rename("test", "filetest.txt")
print ("*** updated directory listing:")
print (os.listdir(cwd))
path = os.path.join(cwd, os.listdir(cwd)[0])
print ("*** full file pathname")
print (path)
print ("*** (pathname, basename) ==")
print (os.path.split(path))
print (os.path.basename(path))
print ("*** (filename, extension) ==")
print (os.path.splitext(os.path.basename(path)))
print ("*** displaying file contents:")
fobj = open(path)
for eachLine in fobj:
print (eachLine)
fobj.close()
print ("*** deleting file: 'filetest.txt' ")
os.remove(path)
print ("*** updated directory listing:")
print (os.listdir(cwd))
os.chdir(os.pardir)
print ("*** deleting directory: 'example' ")
os.rmdir("example")
print ("*** done")