1. 程式人生 > >day8(讀取檔案三次登陸,檔案操作)

day8(讀取檔案三次登陸,檔案操作)

# -*- coding:utf-8 -*-
# write by Paul
name = input('請輸入您要建立的使用者名稱:')
password = input('請輸入您要建立的密碼:')
with open('log.txt', mode="w",encoding='UTF-8') as f:
    f.write("{}\n{}".format(name,password))
    print('恭喜您建立成功!')

print('___________請嘗試登陸___________')
lis = []
i=0
while i < 3:
    name1 = input('
請輸入您的使用者名稱:') password1 = input('請輸入您的密碼:') with open('log.txt', mode="r+",encoding='UTF-8') as f: for line in f.readlines(): lis.append(line) if name1 == lis[0].strip() and password1 == lis[1].strip(): print('恭喜您登陸成功') break else:
print('賬號和密碼錯誤,請重新輸入賬號和密碼!') i += 1
#絕對路徑
# f = open('d:\模特主婦護士班主任.txt',mode='r',encoding='UTF-8')
# content = f.read()
# print(content)
# f.close()

#bytes ---->str
# f = open('模特主婦護士班主任',mode='r',encoding='utf-8')
# content = f.read()
# f.write('fjsdlk')
# f.close()

# f = open('模特主婦護士班主任',mode='rb',)
# content = f.read()
# print(content)
# f.close()
# f = open('log',mode='r+',encoding='utf-8')
# print(f.read())
# f.close()

# f = open('log',mode='r+b')
# print(f.read())
# f.write('大猛,小孟'.encode('utf-8'))
# f.close()



#對於w:沒有此檔案就會建立檔案
# f = open('log',mode='w',encoding='utf-8')
# f.write('騎兵步兵')
# f.close()

# 先將原始檔的內容全部清除,在寫。
# f = open('log',mode='w',encoding='utf-8')
# f.write('附近看到類似糾紛')
# f.close()


# f = open('log',mode='w+',encoding='utf-8')
# f.write('aaa')
# f.seek(0)
# print(f.read())
# f.close()


# f = open('log',mode='wb')
# f.write('附近看到類似糾紛'.encode('utf-8'))
# f.close()

# f = open('log',mode='a',encoding='utf-8')
# f.write('佳琪')
# f.close()
#
# f = open('log',mode='a',encoding='utf-8')
# f.write('佳琪')
# f.close()



# f = open('log',mode='a+',encoding='utf-8')
# f.write('佳琪')
# f.seek(0)
# print(f.read())
# f.close()


# f = open('log',mode='ab')
# f.write('佳琪'.encode('utf-8'))
# f.close()


#功能詳解

# obj = open('log',mode='r+',encoding='utf-8')
# content = f.read(3) # 讀出來的都是字元
# f.seek(3) # 是按照位元組定游標的位置
# f.tell() 告訴你游標的位置
# print(f.tell())
# content = f.read()
# print(content)
# f.tell()
# f.readable() # 是否刻度
# line = f.readline() # 一行一行的讀
# line = f.readlines() # 每一行當成列表中的一個元素,新增到list中
# f.truncate(4)
# for line in f:
# print(line)
# f.close()







# f = open('log',mode='a+',encoding='utf-8')
# f.write('佳琪')
# count = f.tell()
# f.seek(count-9)
# print(f.read(2))
# f.close()

# with open('log',mode='r+',encoding='utf-8') as f,\
# open('log',mode='w+',encoding='utf-8') as f1:
# 檔案處理
    # 開啟檔案
        #open('路徑','開啟方式','指定編碼方式')
        # 開啟方式 r w a r+ w+ a+ b
            #r+ 開啟檔案直接寫 和讀完再寫
        # 編碼方式 —— utf-8
    # 操作檔案
        #
            # read 一次性讀
            # readlines 一次性讀
            # readline 一行一行讀
                #不知道在哪兒結束
                #視訊 圖片 rb bytes 按照位元組讀
            # for迴圈 —— 最好!!!
        #
            # write
        # 游標 —— 檔案指標
            #seek _ 指定游標移動到某個位置
            #tell _ 獲取游標當前的位置
            #truncate _ 擷取檔案
    # 關閉檔案
        #close

# 修改檔案
with open('小護士班主任',encoding='utf-8') as f,open('小護士班主任.bak','w',encoding='utf-8') as f2:
    for line in f:
        if '星兒' in line:  #班主任:星兒
            line = line.replace('星兒','啊嬌')
        #寫檔案
        f2.write(line) #小護士:金老闆

import os
os.remove('小護士班主任') #刪除檔案
os.rename('小護士班主任.bak','小護士班主任')  #重新命名檔案
檔案處理

 

# 修改檔案
with open('小護士班主任',encoding='utf-8') as f,open('小護士班主任.bak','w',encoding='utf-8') as f2:
    for line in f:
        if '星兒' in line:  #班主任:星兒
            line = line.replace('星兒','啊嬌')
        #寫檔案
        f2.write(line) #小護士:金老闆

import os
os.remove('小護士班主任') #刪除檔案
os.rename('小護士班主任.bak','小護士班主任')  #重新命名檔案
修改檔案