一、python partition函數用法
Python中的partition函數是字符串對象的一個內置方法,主要用於將字符串分割成三部分,即分隔符之前的字符串、分隔符本身和分隔符之後的字符串,並將分割後的結果以元組的形式返回。
# 語法 str.partition(sep) # 參數 sep:表示要分割的分隔符字符串 # 返回值 返回一個元組,其中的三個元素分別為:分割符之前的字符串、分隔符本身、分隔符之後的字符串
下面是一個簡單例子
# 示例 str = "I love python" print(str.partition("love")) # 輸出結果 ("I ", "love", " python")
二、Python中partition的用法
1、以元組的形式返回分割結果
partition函數返回一個元組,其中包含分隔符(sep)之前的字符串、sep本身和sep之後的字符串。下面舉一個例子:
str = "Hello, Python!" res = str.partition(",") print(res)
輸出結果為:
("Hello", ",", " Python!")
2、如果字符串中沒有指定的分隔符,partition函數會返回整個字符串和兩個空字符串
如果字符串中沒有分隔符,那麼partition函數會返回整個字符串以及兩個空字符串。下面是代碼示例:
str = "Hello, Python!" res = str.partition(";") print(res)
輸出結果為:
("Hello, Python!", "", "")
3、partition函數不會修改原始字符串
partition函數不會修改原始字符串。下面是一個代碼示例:
str = "Hello, Python!" res = str.partition(",") print(str)
輸出結果為:
"Hello, Python!"
三、Python中partition函數選取相關的例子
1、使用partition實現字符串分割
在Python中,partition函數可以被用來實現字符串分割的操作。代碼如下:
input_str = "www.google.com" part1, part2, part3 = input_str.partition(".") print(part1) print(part3)
輸出結果為:
"www" "google.com"
2、靜態方法和實例方法的差異
在Python中,partition函數是字符串對象的一個方法,它可以通過字符串變量或字符串對象來調用。同時,partition函數還可以被看作是一個靜態方法,可以通過字符串類名直接調用。
下面是一個例子,展示了兩種不同的調用分割函數的方式:
str1 = "hello" str2 = "hello world" # 實例方法調用分割函數 print(str1.partition("l")) # 靜態方法調用分割函數 print(str.partition(str2, "l"))
輸出結果為:
('he', 'l', 'lo') ('he', 'l', 'lo world')
3、使用partition函數設計URL解析器
在Web開發中,經常需要從URL解析出請求的參數,如以下的URL:
http://www.example.com/search?q=python&result_type=json&count=20
我們可以使用partition函數來完成這個任務。
def url_parser(url): scheme, rest = url.partition("://") domain, path = rest.partition("/") path, query = path.partition("?") res = {"scheme": scheme, "domain": domain, "path": path} for pair in query.split("&"): key, value = pair.split("=") res[key] = value return res url = "http://www.example.com/search?q=python&result_type=json&count=20" parsed = url_parser(url) print(parsed)
輸出結果為:
{ "scheme": "http", "domain": "www.example.com", "path": "search", "q": "python", "result_type": "json", "count": "20" }
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/247470.html