遍歷Redis數據庫中有以格式為PREFIX_*的按照key-value方式存儲的key,并打印其值.
遍歷使用SCAN,因為KEYS PREFIX_*可能會造成Redis長時間阻塞。
查詢使用pipeline減少交互,提高效率。
import redis
import hiredis
pool = redis.ConnectionPool(host='127.0.0.1', port=6379, db=0)
r = redis.Redis(connection_pool=pool)
pipe = r.pipeline()
pipe_size = 100000
len = 0
key_list = []
for key in r.scan_iter(match='PREFIX_*', count=100000):
key_list.append(key)
pipe.get(key)
if len < pipe_size:
len += 1
else:
for (k, v) in zip(key_list, pipe.execute()):
print k, v
len = 0
key_list = []
for (k, v) in zip(key_list, pipe.execute()):
print k, v
附上其他網頁的代碼,參考下吧
# filename itertaorfilefolder
import os
import os.path
filePath = raw_input('Enter filepath : ')
#遍歷文件夾
#三個參數:分別返回1.父目錄 2.所有文件夾名字(不含路徑) 3.所有文件名字
for parent ,dirnames , filenames in os.walk(filePath):
#輸出文件夾信息
for dirname in dirnames:
print 'parent is :'+parent
print 'dirname is '+ dirname
#輸出文件信息
for filename in filenames :
print 'parent is :'+parent
print 'filename is :' + filename
#輸出文件路徑信息
currentPath = os.path.join(parent,filename)
print 'the fulll name of the file is :'+ currentPath
filesize = os.path.getsize(currentPath)/1024/1024
print 'the file size is : %.3f MB' %(filesize)
#刪除大于50m的文件
if filesize > 50:
delete = raw_input(' are you sure to delete ?')
if delete == 'yes':
os.remove(currentPath)
以上所述就是本文的全部內容了,希望大家能夠喜歡。
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

