python与redis交互

摘要:
前言首先,我使用计算机:Macbookair,计算机操作系统版本为10.13.6,处理器为1.8GHz IntelCorei5,python版本号为python 3.6.5,ide为python front,自制程序已安装,自制程序安装过程参考https://blog.csdn.net/ziyuzhiye/article/details/78931669安装后,在终端输入brewinstall

前言

首先我使用电脑为:Macbook air,电脑操作系统版本为10.13.6,处理器1.8GHz Intel Core i5,

安装python

版本号:python3.6.5 ,ide: pycharm

前置,已经安装homebrew,安装homebrew流程参考

https://blog.csdn.net/ziyuzhiye/article/details/78931669

安装后,终端输入

brew install python3 

会自动安装当前时间最新版本,安装时最新版本为3.6.5,将会默认安装在 /usr/local/Cellar/python(ps 大部分通过brew安装的软件都在usr/local/Cellar目录下,本人操作过包括hadoop,maven,elasticsearch,kibana,node) 目录下

安装 pycharm

官网下载,解压,下一步,输入序列号,在此提供一个可用获取序列号的方法

http://idea.lanyus.com/

使用pycharm参照

https://blog.csdn.net/qq_40130759/article/details/79421242

安装redis

brew install redis ,安装路径为/usr/local/redis 4.0.9

启动redis 在终端输入

redis-server(开启服务端)

如想自主调试redis,另起终端输入

redis-cli(开启客户端)

使用pycharm开发python项目并关联redis

新建项目,选择python版本(mac内置python2相关版本,所有需要选择)

项目新建成功后,在python控制台输入

pip install redis

引入redis

 1 import redis
 2 import time
 3 # 连接本地redis
 4 conn=redis.Redis(host='localhost',port=6379)
 5 
 6 ONE_WEEK_IN_SECONDS=7*86400
 7 VOTE_SCOPE=432;
 8 '''
 9 存储文章信息
10 hash存储 hset article:id title titleName  link poster time votes 
11 '''
12 # 投票功能实现代码
13 def article_vote(user,article):
14 
15     # 获取超时时间
16     cutoff=time.time()-ONE_WEEK_IN_SECONDS
17     # 检查是否还可以对文章进行投票
18     if(conn.zscore('time',article)<cutoff):
19         return
20     article_id=article.partition(":")[-1]
21     if(conn.sadd('voted:'+article_id,user)):
22         conn.zincrby('score:',article,VOTE_SCOPE)
23         conn.hincrby(article,'votes',1)

免责声明:文章转载自《python与redis交互》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇基于OpenScales的地图网站全程开发(FLEX+GIS等技术结合)WatchDog工作原理下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

python操作Excel模块openpyxl

1、 安装 pip install openpyxl 想要在文件中插入图片文件,需要安装pillow,安装文件:PIL-fork-1.1.7.win-amd64-py2.7.exe · font(字体类):字号、字体颜色、下划线等 · fill(填充类):颜色等 · border(边框类):设置单元格边框 · alignment(位置类):对齐方式 · ...

python之高性能网络编程并发框架eventlet实例

http://blog.csdn.net/mingzznet/article/details/38388299 前言: 虽然 eventlet 封装成了非常类似标准线程库的形式,但线程和eventlet在实际并发执行流程仍然有明显区别。在没有出现 I/O 阻塞时,除非显式声明,否则当前正在执行的 eventlet 永远不会把 cpu 交给其他的 event...

【Python语言】--Crontab结合Python脚本实现将日志每天写入到文件中

一、前述 实际工作中将Python脚本每天定时写入到日志文件中的使用场景还是蛮多的,有很多种方法可以实现这种效果。本文选择一种方式实现,特将实现细节做如下分享,不当之处烦请指正。 二、具体 1、python脚本需要在每个Python文件上面添加logger输出。 如下: 2、Shell脚本中添加后台执行机制。 备注: 1、nohup很关键 这里面千万...

Docker容器实践之运行Python程序

目录 Python镜像文件及PyCode 项目目录 Dockerfile Requirements.txt Hello.py Calander.py Mysql.py Opencv.py 部署运行 Hello world 日历 MySql OpenCv 实验心得 Python镜像文件及PyCode 项目目录 Dockerfile F...

system 系统调用、gcc编译过程

system 库函数的功能是执行操作系统的命令或者运行指定的程序 #include <stdio.h> #include <stdlib.h>//引入库 int main() { //system("notepad");//打开记事本 system("dir");//查看目录   system("ipconfig")...

Redis时延问题分析及应对

Redis时延问题分析及应对 Redis的事件循环在一个线程中处理,作为一个单线程程序,重要的是要保证事件处理的时延短,这样,事件循环中的后续任务才不会阻塞; 当redis的数据量达到一定级别后(比如20G),阻塞操作对性能的影响尤为严重; 下面我们总结下在redis中有哪些耗时的场景及应对方法; 耗时长的命令造成阻塞 keys、sort等命令 keys命...