Python 範例

在 Python 將 snake_case 轉為 camelCase

以底線切分 snake_case,第一個 token 保持小寫,後續 token 首字母大寫。

作者 Camel Case Converter 編輯團隊發布於 2026年9月12日最後審閱

Python 程式碼

def snake_to_camel(value: str) -> str:
    parts = [part for part in value.strip("_").split("_") if part]
    if not parts:
        return ""
    head, *tail = parts
    return head.lower() + "".join(part[:1].upper() + part[1:].lower() for part in tail)

print(snake_to_camel("user_profile_image"))
# userProfileImage

移除前後底線與重複底線造成的空 token,讓一般 snake_case 得到穩定結果。

Python 本身多使用 snake_case,因此轉換特別適合 JSON、API 或 JavaScript frontend 的邊界。

需要考慮的邊界案例

  • 縮寫輸出取決於消費系統的命名規則。
  • 巢狀 dict 需要遞迴 key 轉換,不只是字串 helper。
  • 大寫、連字號與空白需要更通用的 tokenization。
  • 固定 API contract 通常在 serialization/deserialization 邊界轉換更清楚。

範例

轉換前轉換後
user_profile_imageuserProfileImage
__user__profile__userProfile
api_response_urlapiResponseUrl
created_atcreatedAt

Python 程式碼

cases = {
    "user_profile_image": "userProfileImage",
    "__user__profile__": "userProfile",
    "api_response_url": "apiResponseUrl",
    "created_at": "createdAt",
}

for value, expected in cases.items():
    assert snake_to_camel(value) == expected

線上測試轉換

使用瀏覽器工具快速檢查、批次處理、縮寫或混合命名格式。

偵測:snake_case
camelCase 輸出
userProfileImageUrl

所有命名格式

camelCase
userProfileImageUrl
PascalCase
UserProfileImageUrl
snake_case
user_profile_image_url
kebab-case
user-profile-image-url
CONSTANT_CASE
USER_PROFILE_IMAGE_URL
dot.case
user.profile.image.url
path/case
user/profile/image/url

轉換會在瀏覽器本機執行,輸入不會傳送到轉換伺服器。