遍历使用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
附上其他网页的代码,参考下吧
# 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)
以上所述就是本文的全部内容了,希望大家能够喜欢。
查看更多关于Python实现遍历数据库并获取key的值的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://haodehen.cn/did88751