python查看文件大小
① python 怎麼判斷文件的大小
importos
print('%dBytes'%(os.path.getsize(r'c:xxx.txt')))
② 請教如何使用python實現根據文件名獲取文件大小和路徑
怎麼在Excel中運行python腳本?這個問題由來已久,很多pythoner都希望直接用python控制Excel,但是只能從外部調用,有沒有一個VBA的東西可以直接在Excel中運行呢?答案是有,DataNitro就是這么一個東西,看看下面Excel中的界面,他就是了,可以直接點擊『run'來運行一個Python腳本。下面我們來看看它是如何安裝與配置的。
先安裝python2.7,其他版本不知道行不行,但是這個肯定行,然後配置環境變數,保證python在該環境中,打開開始菜單,找到計算機,然後右鍵單擊它,選擇【屬性】
找到高級系統設置
找到環境變數,點擊該按鈕,打開環境變數設置窗口
找到Path系統變數,然後點擊【編輯】
在這里,確保python的安裝目錄在,沒有的話,添加進去
下面就可以安裝該插件了,去官網下載一個;或者網路一下,各大下載網站都有
雙擊即可安裝,安裝過程就是一路點擊』下一步,不過有一步需要注意
在這里,不要勾選python,如果通過這種方式安裝python,你原先安裝的python就無法使用了
最後安裝完成,打開Excel就可以看到datanitro了
③ 用Python語言實現計算某個文件夾下所有文件的大小,並將結果果輸出到屏幕上
importos
list=os.listdir(r"./文件夾名")
foriinlist:
print(os.path.getsize(i))
④ python中怎麼查看文件大小
print(os.path.getsize("C:\Users\Administrator\Desktop\1234.txt")) 回去文件大小,以位元組為單位
⑤ python 讀取大文件數據怎麼快速讀取
python中讀取數據的時候有幾種方法,無非是read,readline,readlings和xreadlines幾種方法,在幾種方法中,read和xreadlines可以作為迭代器使用,從而在讀取大數據的時候比較有效果.
在測試中,先創建一個大文件,大概1GB左右,使用的程序如下:
[python] view plainprint?
import os.path
import time
while os.path.getsize('messages') <1000000000:
f = open('messages','a')
f.write('this is a file/n')
f.close()
print 'file create complted'
在這里使用循環判斷文件的大小,如果大小在1GB左右,那麼結束創建文件。--需要花費好幾分鍾的時間。
測試代碼如下:
[python] view plainprint?
#22s
start_time = time.time()
f = open('messages','r')
for i in f:
end_time = time.time()
print end_time - start_time
break
f.close()
#22s
start_time = time.time()
f = open('messages','r')
for i in f.xreadlines():
end_time = time.time()
print end_time - start_time
break
f.close()
start_time = time.time()
f = open('messages','r')
k= f.readlines()
f.close()
end_time = time.time()
print end_time - start_time
使用迭代器的時候,兩者的時間是差不多的,內存消耗也不是很多,使用的時間大概在22秒作用
在使用完全讀取文件的時候,使用的時間在40s,並且內存消耗相當嚴重,大概使用了1G的內存。。
其實,在使用跌倒器的時候,如果進行連續操作,進行print或者其他的操作,內存消耗還是不可避免的,但是內存在那個時候是可以釋放的,從而使用迭代器可以節省內存,主要是可以釋放。
而在使用直接讀取所有數據的時候,數據會保留在內存中,是無法釋放這個內存的,從而內存卡死也是有可能的。
在使用的時候,最好是直接使用for i in f的方式來使用,在讀取的時候,f本身就是一個迭代器,其實也就是f.read方法
⑥ 用python 列出指定目錄下所有的txt文件,並輸出每個文件的創建日期和大小
《》網路網盤免費在線下載鏈接:
提取碼:9cjq
操作更方便哦
⑦ python從txt文件中讀取數字,並且判斷其大小。
#!/usr/bin/python
#encoding:utf-8
importre
context="""
0.00000000E+001.99000000E-021.05000000E+000.00000000E+003.88519671E+02
4.20000000E-021.99000000E-021.00800000E+000.00000000E+004.23216155E+02
8.40000000E-021.99000000E-029.66000000E-010.00000000E+004.67920285E+02
1.26000000E-011.99000000E-029.24000000E-010.00000000E+004.89975818E+02
1.68000000E-011.99000000E-028.82000000E-010.00000000E+005.01845166E+02
2.10000000E-011.99000000E-028.40000000E-010.00000000E+005.10017363E+02
2.52000000E-011.99000000E-027.98000000E-010.00000000E+005.15927207E+02
2.94000000E-011.99000000E-027.56000000E-010.00000000E+005.18914324E+02
3.36000000E-011.99000000E-027.14000000E-010.00000000E+005.18683254E+02
"""
patt=re.compile(r"d.d+E[+-]d{2}")
array=[]
forlninfilter(None,context.splitlines()):
array.append(map(float,patt.findall(ln)))
debug=True
defdebugView(obj):
importpprint
ifdebug:
pprint.pprint(obj)
debugView(array)
你的數據來自文本文件,可以用 for ln in filter(None, open(datafile, 'rt'))
替代 for ln in filter(None, context.splitlines())
⑧ python 在不解壓的情況下,怎麼得知壓縮包裡面文件的大小呢
可以使用 tarfile 模塊在不解壓的情況下查看壓縮包里文件的大小,代碼如下:
#coding=utf8
importtarfile
importos
tar=tarfile.open('G:/test/abc.tar.gz','r:gz')
fortiintar:
ifti.isreg():
print(ti.name,ti.size)
⑨ Python中如何獲取ftp伺服器上的文件大小
這要看你下載用了哪個ftp庫
搜到的代碼
files = ftp.nlst()
for f in files:
print f
⑩ python 實時檢測文件夾的大小,如果超過設定值,自動清空文件夾,如何
實時檢測我覺得可能沒必要了,周期性檢測倒是不錯,比如每隔30秒檢查一次,除非你一秒鍾就幾十上百兆數據寫入,那就得實時檢測了。
實時監測的話,在while循環里不停的查看文件夾的變化
首寫關於文件夾的大小,據我所知道的python標准庫並沒有提供關於文件夾大小的api或套件,你需要一個一個文件的去遍歷獲取文件的大小累加求和,獲取文件大小可以使用os.stat(文件路徑)。不過最好的方式,我覺得是通過調用系統命令獲取文件夾的大小,這樣就不用寫遞歸方法,獲取你要清空目錄下的文件目錄結構,當然目錄結構簡單的話,遞歸方法都不用寫。不知道你的操作系統是什麼,linux的話可以用
-sh /data/applog/
在python2.7中可以使用commands.getoutput執行上面的命令並獲取到輸出結果
第二就是關於清空文件夾的,你必須保證沒有程序對你要清空的目錄進行訪問,你才能正常的清空,否則,對於在使用中的文件你會清空失敗。清空文件夾你可以使用shutil庫里的rmtree()方法,它不管你文件夾是否有文件或子文件夾,使用它就是一行代碼的事情,如果使用os模塊進行刪除的話你要從最底層文件夾開始刪除。最後你再重新新建這文件夾
上面只是思路,具體使用還得根據你的實際需要來的
如果你要進行周期性檢測的話,可以使用標准庫中的sched庫來開發