使用Python將蛇形命名法字串轉換為駝峰命名法
蛇形命名法是一種命名約定,其中單詞用下劃線('_')分隔。駝峰命名法是指兩個或多個單詞連線在一起,沒有空格,每個單詞的首字母大寫。Python中有多種內建方法,如split()、join()和re.sub(),可用於將蛇形命名法字串轉換為駝峰命名法。
讓我們來看一個例子:
蛇形命名法字串 - hello_world(使用分隔符,即下劃線'_')
駝峰命名法字串 - helloWorld(將蛇形命名法轉換為駝峰命名法時,第二個單詞的首字母大寫,並且沒有空格和分隔符)。
語法
以下語法在示例中使用:
split()
split()是Python中的內建方法,用於從字串中設定新的子字串。此方法使用提供的分隔符將字串分割成字串列表。
join()
join()是Python中的內建方法,用於將所有字串連線在一起。
re.sub()
re.sub(pat, replacement, str)函式查詢並替換給定字串中模式的所有例項。
title()
title方法是Python中的內建庫,用於將字串的首字母轉換為大寫。
使用Split()和Join()方法
該程式使用名為split()的方法來分割字串列表,並使用名為join()的方法來連線兩個單詞,中間沒有空格。
示例
在下面的示例中,我們將首先定義名為snake_to_camel_case的函式,該函式將snake_case_string轉換為camelCase。它透過下劃線分割字串,將後續單詞的首字母大寫,並將它們組合起來以構造camelCase版本。最後,我們列印結果為“blackBox”。
def snake_to_camel_case(snake_case_string):
words = snake_case_string.split('_')
camel_case_string = words[0].lower() + ''.join(word.title() for word in words[1:])
return camel_case_string
# Store input for snake case string
snake_case_str = "black_box"
result = snake_to_camel_case(snake_case_str)
print(result)
輸出
blackBox
使用正則表示式和Re.sub()
該程式使用正則表示式來幫助將蛇形命名法字串轉換為駝峰命名法字串。
示例
在下面的示例中,名為snake_to_camel_case的函式使用正則表示式將snake_case_string轉換為camelCase。它用字母的大寫版本替換下劃線後跟一個字母。然後最終結果變為
“kaliLinux”。
import re def snake_to_camel_case(snake_case_string): camel_case_string = re.sub(r'_([a-zA-Z])', lambda match: match.group(1).upper(), snake_case_string) return camel_case_string # Input of snake case string snake_case_str = "kali_linux" result = snake_to_camel_case(snake_case_str) print(result)
輸出
kaliLinux
使用列表推導式和''.join()
該程式使用帶有空字串的join()方法來儲存新字串,並在for迴圈中使用列表推導式來分割分隔符,即'_'。這是將蛇形命名法字串轉換為駝峰命名法字串的方法。
示例
在下面的示例中,我們從名為snake_to_camel_case的函式開始,該函式將snake_case_string轉換為camelCase。它透過下劃線分割字串以訪問各個單詞。它將每個單詞大寫,並將其與從第二個單詞開始的前面單詞連線起來。接下來,最終結果將變為“softwareDevelopment”。
def snake_to_camel_case(snake_case_string):
words = snake_case_string.split('_')
camel_case_string = ''.join(words[0] + word.title() for word in words[1:])
return camel_case_string
# Input of snake case string
snake_case_str = "software_development"
result = snake_to_camel_case(snake_case_str)
print(result)
輸出
softwareDevelopment
使用迴圈和字串連線
該程式使用字串連線來建立字串的新格式,並迴圈迭代字串,並將結果轉換為駝峰命名法字串。
示例
在下面的示例中,snake_case_string使用snake_to_camel_case函式轉換為camelCase。它透過下劃線分割字串並將第一個單詞載入到camel_case_string中。然後,它使用for迴圈遍歷其餘單詞,將每個單詞大寫並將其附加到camel_case_string中。最後,我們列印結果為“pythogorasTheorem”。
def snake_to_camel_case(snake_case_string):
words = snake_case_string.split('_')
camel_case_string = words[0]
for word in words[1:]:
camel_case_string += word.title()
return camel_case_string
# Input of snake case string
snake_case_str = "pythogoras_theorem"
result = snake_to_camel_case(snake_case_str)
print(result)
輸出
pythogorasTheorem
結論
我們討論了多種解決本文問題陳述的方法。蛇形命名法和駝峰命名法字串用於表示程式設計中使用的變數名的命名約定。兩種不同字串的轉換是構建程式邏輯的方法,該邏輯將用於表示不同的樣式格式。
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP