PythonコードをRedisサーバーに接続するために、普通のredis
パッケージを使用しています。Python-redis keys()は、文字列の代わりにbytesオブジェクトのリストを返します。
私のコードの一部として、文字列オブジェクトが私のRedisサーバーのキーに存在するかどうかをチェックします。何らかの理由
string = 'abcde'
if string in redis.keys():
do something..
、redis.keys()私の文字列は、勿論、str
オブジェクトであるが、バイト・オブジェクトとのリスト、など[b'abcde']
を返します。
私は既に赤目発生器にcharset
,encoding
とdecode_responses
を設定しようとしましたが、それは役に立たなかったです。
私の目標は、データを文字列として先に挿入し、キーリストを反復処理せずに、各要素をチェックしながらstr()に変更することです。 KEYS操作があなたのRedisのデータベース内のすべてのキーを返し、生産に深刻なパフォーマンスの低下の原因となります
string = 'abcde'
if redis.exists(string):
do something..
:あなたが好きEXISTSコマンドを使用し、コードを再構築したほうが良いでしょう先駆け
おかげ
[文字列をPython 3のバイトに変換する最も良い方法は?](http://stackoverflow.com/questions/7585435/best-way-to-convert-string-to-bytes-in) -python-3) –
また、http://stackoverflow.com/questions/25745053 – Bemmu