Python で Redis を使用するにはどうすればよいですか?次の記事ではPythonでRedisを使う方法を紹介しますので、ぜひ参考にしてください。

以前は Redis
を使用するために Redis
クライアントを使用していましたが、実際の作業では、ほとんどの場合、以下はすべて # を使用していますコードによる ##Redis エディターは
Python に精通しているため、今日は
Python の使用方法を学習します。##Redis
。 [関連する推奨事項: Redis ビデオ チュートリアル
]環境の準備
Redis- まず、Redis をインストールする必要があります。
Python- がインストールされています (
Python3
を推奨します)。
Redis- の
Python
ライブラリがインストールされます (pip install redis
)。
練習を始める
試してみる
例:
Python
を介して Redis
に接続する予定です。次に、kv
を記述し、最後にクエリされた v
を出力します。
直接接続
#!/usr/bin/python3
import redis # 导入redis模块
r = redis.Redis(host='localhost', port=6379, password="pwd@321", decode_responses=True) # host是redis主机,password为认证密码,redis默认端口是6379
r.set('name', 'phyger-from-python-redis') # key是"name" value是"phyger-from-python-redis" 将键值对存入redis缓存
print(r['name']) # 第一种:取出键name对应的值
print(r.get('name')) # 第二种:取出键name对应的值
print(type(r.get('name')))
ログイン後にコピー


##get
は接続プールの最後の接続です実行するコマンド。
接続プール
通常、
redis
に接続する必要がある場合、接続が作成され、
redis 操作が実行されます。この接続に基づいて実行されます。操作が完了したら解放します。通常の状況ではこれは問題ありませんが、同時実行の量が多い場合、頻繁な接続の作成と解放がパフォーマンスに大きな影響を与えるため、接続プールが機能します。
コネクションプールの原理: 事前に複数のコネクションを作成しておき、
redis
操作を行う際には、既に作成されているコネクションを直接取得して操作します。完了後、接続は解放されませんが、後続の
redis 操作のために接続プールに戻されます。これにより、継続的な作成とリリースが回避され、パフォーマンスが向上します。
#!/usr/bin/python3
import redis,time # 导入redis模块,通过python操作redis 也可以直接在redis主机的服务端操作缓存数据库
pool = redis.ConnectionPool(host='localhost', port=6379, password="pwd@321", decode_responses=True) # host是redis主机,需要redis服务端和客户端都起着 redis默认端口是6379
r = redis.Redis(connection_pool=pool)
r.set('name', 'phyger-from-python-redis')
print(r['name'])
print(r.get('name')) # 取出键name对应的值
print(type(r.get('name')))
ログイン後にコピー
実際に使用すると、直接接続と接続プールの使用の効果は同じであることがわかりますが、同時実行時には明らかな違いがあります。高い。 。
基本操作の実践
多くの
Redis
コマンドについて、例として
SET コマンドを取り上げます。
形式:
set(名前, 値, ex=なし, px=なし, nx=False, xx=False)# #redis-py の set コマンドのパラメーター:
パラメーター名
解釈 | |
ex有効期限 (分) | px |
有効期限 (ms) | nx |
true の場合、名前のみが存在しません | #xx | ##
true の場合、現在の設定操作は、name が存在する場合にのみ実行されます。 #ex
我们计划创建一个 kv
并且设置其 ex
为 3
,期待 3
秒后此 k
的 v
会变为 None
。
#!/usr/bin/python3
import redis,time # 导入redis模块,通过python操作redis 也可以直接在redis主机的服务端操作缓存数据库
pool = redis.ConnectionPool(host='localhost', port=6379, password="pwd@321", decode_responses=True) # host是redis主机,需要redis服务端和客户端都起着 redis默认端口是6379
r = redis.Redis(connection_pool=pool)
r.set('name', 'phyger-from-python-redis',ex=3)
print(r['name']) # 应当有v
time.sleep(3)
print(r.get('name')) # 应当无v
print(type(r.get('name')))
ログイン後にコピー

nx
由于 px 的单位太短,我们就不做演示,效果和 ex 相同。
我们计划去重复 set
前面已经 set
过的 name
,不出意外的话,在 nx
为真时,我们将会 set
失败。但是人如果 set
不存在的 name1
,则会成功。
#!/usr/bin/python3
import redis,time # 导入redis模块,通过python操作redis 也可以直接在redis主机的服务端操作缓存数据库
pool = redis.ConnectionPool(host='localhost', port=6379, password="pwd@321", decode_responses=True) # host是redis主机,需要redis服务端和客户端都起着 redis默认端口是6379
r = redis.Redis(connection_pool=pool)
r.set('name', 'phyger-0',nx=3) # set失败
print(r['name']) # 应当不生效
r.set('name1', 'phyger-1',nx=3) # set成功
print(r.get('name1')) # 应当生效
print(type(r.get('name')))
ログイン後にコピー

如上,你会发现 name
的 set
未生效,因为 name
已经存在于数据库中。而 name1
的 set
已经生效,因为 name1
是之前在数据库中不存在的。
xx
我们计划去重复 set
前面已经 set
过的 name
,不出意外的话,在 nx
为真时,我们将会 set
成功。但是人如果 set
不存在的 name2
,则会失败。
#!/usr/bin/python3
import redis,time # 导入redis模块,通过python操作redis 也可以直接在redis主机的服务端操作缓存数据库
pool = redis.ConnectionPool(host='localhost', port=6379, password="pwd@321", decode_responses=True) # host是redis主机,需要redis服务端和客户端都起着 redis默认端口是6379
r = redis.Redis(connection_pool=pool)
r.set('name', 'phyger-0',xx=3) # set失败
print(r['name']) # 应当变了
r.set('name2', 'phyger-1',xx=3) # set成功
print(r.get('name2')) # 应当没有set成功
print(type(r.get('name')))
ログイン後にコピー

以上,就是今天全部的内容,更多信息建议参考 redis
官方文档。
更多编程相关知识,请访问:编程视频!!
以上がPython で Redis を使用する方法の簡単な分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
Python vs. JavaScript:コミュニティ、ライブラリ、リソース
Apr 15, 2025 am 12:16 AM
PythonとJavaScriptには、コミュニティ、ライブラリ、リソースの観点から、独自の利点と短所があります。 1)Pythonコミュニティはフレンドリーで初心者に適していますが、フロントエンドの開発リソースはJavaScriptほど豊富ではありません。 2)Pythonはデータサイエンスおよび機械学習ライブラリで強力ですが、JavaScriptはフロントエンド開発ライブラリとフレームワークで優れています。 3)どちらも豊富な学習リソースを持っていますが、Pythonは公式文書から始めるのに適していますが、JavaScriptはMDNWebDocsにより優れています。選択は、プロジェクトのニーズと個人的な関心に基づいている必要があります。
Python:自動化、スクリプト、およびタスク管理
Apr 16, 2025 am 12:14 AM
Pythonは、自動化、スクリプト、およびタスク管理に優れています。 1)自動化:OSやShutilなどの標準ライブラリを介してファイルバックアップが実現されます。 2)スクリプトの書き込み:Psutilライブラリを使用してシステムリソースを監視します。 3)タスク管理:スケジュールライブラリを使用してタスクをスケジュールします。 Pythonの使いやすさと豊富なライブラリサポートにより、これらの分野で優先ツールになります。
ターミナルVSCODEでプログラムを実行する方法
Apr 15, 2025 pm 06:42 PM
VSコードでは、次の手順を通じて端末でプログラムを実行できます。コードを準備し、統合端子を開き、コードディレクトリが端末作業ディレクトリと一致していることを確認します。プログラミング言語(pythonのpython your_file_name.pyなど)に従って実行コマンドを選択して、それが正常に実行されるかどうかを確認し、エラーを解決します。デバッガーを使用して、デバッグ効率を向上させます。
VSCODE拡張機能は悪意がありますか?
Apr 15, 2025 pm 07:57 PM
VSコード拡張機能は、悪意のあるコードの隠れ、脆弱性の活用、合法的な拡張機能としての自慰行為など、悪意のあるリスクを引き起こします。悪意のある拡張機能を識別する方法には、パブリッシャーのチェック、コメントの読み取り、コードのチェック、およびインストールに注意してください。セキュリティ対策には、セキュリティ認識、良好な習慣、定期的な更新、ウイルス対策ソフトウェアも含まれます。
vscodeとは何ですか?vscodeとは何ですか?
Apr 15, 2025 pm 06:45 PM
VSコードは、Microsoftが開発した無料のオープンソースクロスプラットフォームコードエディターと開発環境であるフルネームVisual Studioコードです。幅広いプログラミング言語をサポートし、構文の強調表示、コード自動完了、コードスニペット、および開発効率を向上させるスマートプロンプトを提供します。リッチな拡張エコシステムを通じて、ユーザーは、デバッガー、コードフォーマットツール、GIT統合など、特定のニーズや言語に拡張機能を追加できます。 VSコードには、コードのバグをすばやく見つけて解決するのに役立つ直感的なデバッガーも含まれています。
vscodeはMacで使用できます
Apr 15, 2025 pm 07:45 PM
VSコードはMACOでうまく機能し、開発効率を向上させることができます。インストールと構成の手順には、インストールとコードと構成が含まれます。言語固有の拡張機能(JavaScriptのESLINTなど)をインストールします。拡張機能を慎重に取り付けて、過度のスタートアップが遅くなることを避けます。 GIT統合、ターミナル、デバッガーなどの基本的な機能を学びます。適切なテーマとコードフォントを設定します。潜在的な問題に注意:拡張互換性、ファイル許可など。
Python vs. JavaScript:学習曲線と使いやすさ
Apr 16, 2025 am 12:12 AM
Pythonは、スムーズな学習曲線と簡潔な構文を備えた初心者により適しています。 JavaScriptは、急な学習曲線と柔軟な構文を備えたフロントエンド開発に適しています。 1。Python構文は直感的で、データサイエンスやバックエンド開発に適しています。 2。JavaScriptは柔軟で、フロントエンドおよびサーバー側のプログラミングで広く使用されています。
Pythonを実行していないVSCODEで何が起こっているのか
Apr 15, 2025 pm 06:00 PM
最も一般的な「Pythonを実行できません」という問題は、Pythonインタープリターパスの誤った構成に起因します。ソリューションには、Pythonのインストールの確認、コードの構成、仮想環境の使用が含まれます。さらに、仮想環境を使用した依存関係の分離、ブレークポイントを使用したコード実行の追跡、モニタリング式などを使用したリアルタイムのトラッキング依存関係など、ブレークポイントのデバッグ、可変監視、ログ出力、コードフォーマットなど、効率的なデバッグ手法とベストプラクティスがあります。
See all articles