1. 程式人生 > >Python I/O 檔案操作Demo

Python I/O 檔案操作Demo

import os

# __file__ 表示當前檔案路徑
print(__file__)
# os.getcwd() 表示當前的工作目錄
print(os.getcwd())

#桌面路徑
#1. 在當前檔案目錄下新建資料夾 pyTest,用__file__絕對路徑也可以
if not os.path.exists('./pyTest'):
    os.mkdir("./pyTest")
    
#2. 改變當前目錄
os.chdir(os.getcwd() + '\\pyTest')
print(os.getcwd())

#3. 在pyTest中新建檔案 1.txt
fileObj = open('./1.txt', 'a+')
for i in range(100):
    fileObj.write(str(i) + '\n')

fileObj.flush()
fileObj.close()

#4. 讀取1.txt
fileObj = open('./1.txt', 'r')
# readline() 方式讀取
# while True:
#   lineStr = fileObj.readline()
#    if lineStr:
#        print(lineStr, end='')
#    else:
#        break

# next() 方式讀取
#try:
#    while True:
#        lineStr = next(fileObj)
#        if lineStr:
#            print(lineStr, end='')
#        else:
#            break
#except Exception as e:
#    pass       


# iter 迭代器方式讀取 推薦使用
#iter = iter(fileObj)
#for line in iter:
#    print(line, end='')
# 感覺和上面的迭代器沒啥區別
iter = iter(fileObj)
try:
    while True:
        line = next(iter)
        if line:
            print(line, end='')
        else:
            break
except Exception as e:
    pass
fileObj.close()


os.chdir('../')
print(os.getcwd())
# 刪除非空資料夾
shutil.rmtree('pyTest')