1. 程式人生 > >Python連載25-函式tell&write&writeline$&持久化

Python連載25-函式tell&write&writeline$&持久化

一、

1.連續列印舉例

#開啟檔案,三個字元一組讀出來內容,然後顯示在螢幕上,每讀一次,停一秒

 

import time

with open(r"test01.txt",'r') as f:

    strChar = f.read(3)

    while strChar:

        print(strChar)

        time.sleep(1)

        strChar = f.read(3)

 

 

2.tell函式

(1)用法:用來顯示檔案讀寫指標的當前位置

(2)格式:檔案.tell()

(3)舉例:

 

with open(r"test01.txt",'r') as f:

    strChar2 = f.read(3)

    pos = f.tell()

    while strChar2:

        print(pos)

        print(strChar2)

        strChar2 = f.read(3)

        pos = f.tell()

 

(4)注意:上面的例子說明了:tell返回數字的單位是byte;read是以字元為單位的

3.檔案的寫操作 --函式write與writeline

(1)用法:

write(str):把字串寫入檔案

writeline(str):把字串按行寫入檔案

(2)格式:

檔案.write(str)

檔案.writelines(str)

(3)區別:

i.write函式引數只能是字串

ii.writeline函式引數可以是字串,也可以是字串序列

 

with open(r"test01.txt",'a') as l:

    l.write("優秀1 \n非常優秀1")

    b = ["優秀2","非常優秀2","jsfdk"]

    l.writelines(b)

 

二、持久化 --模組pickle

1.(1)序列化(持久化、落地):把程式執行中的資訊儲存在磁碟上

(2)反序列化:序列化+的逆過程

2.函式dump&load

(1)用法:

dump序列化

load反序列化

(2)格式:

pickle.dump(被存檔案,儲存到的檔案)

pickle.load(讀取的檔案)

(3)例子:

 

import pickle

with open(r"test01.txt","wb") as k:

    age = 24

    pickle.dump(age,k)

​

with open(r"test01.txt","rb") as j:

    age=pickle.load(j)

    print(age)

三、原始碼

d17_5_datetime_package

地址:https://github.com/ruigege66/Python_learning/blob/master/d17_5_datetime_package

2.CSDN:https://blog.csdn.net/weixin_44630050(心悅君兮君不知-睿)

3.部落格園:https://www.cnblogs.com/ruigege0000/

4.歡迎關注微信公眾號:傅立葉變換

 

&n