{"library":"pylibmc","title":"pylibmc","description":"pylibmc is a high-performance Python client for memcached, implemented as a C Python extension wrapper around TangentOrg's `libmemcached` library. It offers an API intentionally designed to be close to `python-memcached` for easy drop-in replacement, leveraging features like configurable behaviors, binary protocol, data pickling, and compression. The current version is 1.6.3.","language":"python","status":"active","last_verified":"Sun May 17","install":{"commands":["pip install pylibmc"],"cli":null},"imports":["from pylibmc import Client","from pylibmc import ThreadMappedPool"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import pylibmc\nimport os\n\n# Memcached server addresses, can be an environment variable (e.g., for MemCachier).\n# For local testing, use ['127.0.0.1:11211']. Multiple servers can be listed.\nservers = os.environ.get('MEMCACHIER_SERVERS', '127.0.0.1:11211').split(',')\nusername = os.environ.get('MEMCACHIER_USERNAME', '')\npassword = os.environ.get('MEMCACHIER_PASSWORD', '')\n\n# Initialize client. 'binary=True' enables the binary protocol, 'tcp_nodelay' improves performance.\n# SASL authentication is used if username and password are provided.\nif username and password:\n    mc = pylibmc.Client(servers, binary=True, behaviors={\"tcp_nodelay\": True}, username=username, password=password)\nelse:\n    mc = pylibmc.Client(servers, binary=True, behaviors={\"tcp_nodelay\": True})\n\n# Basic operations\nkey = \"my_test_key\"\nvalue = \"Hello from pylibmc!\"\n\n# Set a value with an expiry of 60 seconds\nsuccess_set = mc.set(key, value, time=60)\nprint(f\"Set '{key}' to '{value}': {success_set}\")\n\n# Get the value\nretrieved_value = mc.get(key)\nprint(f\"Retrieved '{key}': {retrieved_value}\")\n\n# Set multiple values\nmc.set_multi({\"key1\": \"value1\", \"key2\": 123})\nprint(f\"Retrieved 'key1': {mc.get('key1')}\")\n\n# Delete a key\nsuccess_delete = mc.delete(key)\nprint(f\"Deleted '{key}': {success_delete}\")\nprint(f\"'{key}' after deletion: {mc.get(key)}\")","lang":"python","description":"This quickstart demonstrates how to connect to a memcached server using `pylibmc.Client`, perform basic `set`, `get`, and `delete` operations, and handle optional SASL authentication using environment variables. It highlights setting expiry times and utilizing the binary protocol.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":{"tag":null,"tag_description":null,"last_tested":"2026-05-17","installed_version":"1.6.3","pypi_latest":"1.6.3","is_stale":false,"summary":{"python_range":"3.10–3.9","success_rate":30,"avg_install_s":1.6,"avg_import_s":0.01,"wheel_type":"wheel"},"results":[{"runtime":"python:3.10-alpine","python_version":"3.10","os_libc":"alpine (musl)","variant":"pylibmc","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.10-slim","python_version":"3.10","os_libc":"slim (glibc)","variant":"pylibmc","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":1.5,"import_time_s":0.01,"mem_mb":0.5,"disk_size":"21M"},{"runtime":"python:3.11-alpine","python_version":"3.11","os_libc":"alpine (musl)","variant":"pylibmc","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.11-slim","python_version":"3.11","os_libc":"slim (glibc)","variant":"pylibmc","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":1.6,"import_time_s":0.01,"mem_mb":0.5,"disk_size":"23M"},{"runtime":"python:3.12-alpine","python_version":"3.12","os_libc":"alpine (musl)","variant":"pylibmc","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.12-slim","python_version":"3.12","os_libc":"slim (glibc)","variant":"pylibmc","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":3,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.13-alpine","python_version":"3.13","os_libc":"alpine (musl)","variant":"pylibmc","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.13-slim","python_version":"3.13","os_libc":"slim (glibc)","variant":"pylibmc","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":2.7,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.9-alpine","python_version":"3.9","os_libc":"alpine (musl)","variant":"pylibmc","exit_code":1,"wheel_type":null,"failure_reason":"build_error","import_side_effects":null,"install_time_s":null,"import_time_s":null,"mem_mb":null,"disk_size":null},{"runtime":"python:3.9-slim","python_version":"3.9","os_libc":"slim (glibc)","variant":"pylibmc","exit_code":0,"wheel_type":"wheel","failure_reason":null,"import_side_effects":"clean","install_time_s":1.8,"import_time_s":0.01,"mem_mb":0.4,"disk_size":"21M"}]}}