python打開文件是否為動態獲取文件的內容?什么意思呢? 就是我寫一個程序,打開一個文件,一直對他循環讀取,我在另一個程序,打開這個文件,以a的模式追加內容,那么第一個程序是否能讀取到第二個程序追加的內容呢? 還是說第一次讀取的文件 僅僅是一開始讀到的內容呢。
建設一個file文件,內容就為吧lqwzs
這個程序就是讀文件,第一次讀取全部的內容,注意!!!:讀完后文件的seek(光標位置)停在末尾,再讀的話就是從原來文件末尾讀,那么能不能讀到內容呢?接下來看
運行一下:
很容易理解,把內容讀取到了
這個程序就是在不斷的追加內容,很容易理解. 接下來就是關鍵了!!!,我在文件末尾添加內容。
那么能否被讀取到呢
請看:
挖草,怎么就被讀到了呢,什么原因呢,python讀取文件是動態的嘛,什么原因呀,我的理解就是,python一切皆對象,文件是對象,也是容器吧,他對應的內存地址,是固定的,但是由於這個內存地址是容器型的(我覺得我再瞎扯 呵呵呵),內部是可以改變的,就像list之類的吧,這樣其他程序在添加的,增加了文件內存地址所指向的內容,內存地址本身沒有改變,所有就能讀到吧,我不禁想到了之前遇到的一個習題:
哭了,怎么就這樣了阿 ,讓我來瞎扯一下吧,在函數調用的時候,b是一個默認的列表容器,指向一個內存地址,在經過fun(1),b添加了一個元素1,此時b指向的內存地址並沒有改變,只不過內存地址里面內容改變了,b的內存地址並沒有改變,第二次調用這個函數,還是用的是b的內存地址,此時的b為[1,2,1],經過第二次調用,添加一個元素,就這樣了[1, 2, 1, '阿這,阿這,又是為什么呢']
注: lqw的第一個博客園文章,第一次,寫了一個小時,發現對知識的理解不夠深,感覺是明白了,描述起來,模模糊糊,不夠准確吧 要加油那
,