Release v3.8.0. (Installation)

Pypi Build status Documentation Status Coverage Python Versions

humps 🐫 Convert strings (and dictionary keys) between snake case, camel case and pascal case in Python. Inspired by Humps for Node

Introducing Humps for Python! Let’s see it in action:

>>> import humps
>>> humps.decamelize('illWearYourGranddadsClothes')   # 'ill_wear_your_granddads_clothes'
>>> humps.camelize('i_look_incredible')               # 'iLookIncredible'
>>> humps.kebabize('i_look_incredible')               # 'i-look-incredible'
>>> humps.pascalize('im_in_this_big_ass_coat')        # 'ImInThisBigAssCoat'
>>> humps.decamelize('FROMThatThriftShop')            # 'from_that_thrift_shop'
>>> humps.decamelize([{'downTheRoad': True}])         # [{'down_the_road': True}]
>>> humps.dekebabize('FROM-That-Thrift-Shop')            # 'FROM_That_Thrift_Shop'


  • Convert from snake_case to camelCase and PascalCase and kebab-case
  • Convert from camelCase to snake_case and PascalCase
  • Convert from PascalCase to snake_case and camelCase
  • Convert from kebab-case to snake_case
  • Supports recursively converting dict keys
  • Supports recursively converting lists of dictionaries
  • Gracefully handles abbrevations, acronyms, and initialisms
  • Extensively documented source code
  • No third-party dependencies


To install humps, simply use pipenv (or pip, of course):

$ pipenv install pyhumps

The API Documentation / Guide

If you are looking for information on a specific function, this part of the documentation is for you.

Indices and tables