引言
你既然需要看这篇文章,那说明你还不太了解 python,python 一大突出的优势就是字符串的处理,快来让我们认识下分割器(split)。
简介
操作系统:window7 x64
编程IDE:Pycharm 2016.1.2
Python版本:3.6.1
版权所有:_ O E _ , 转载请注明出处:http://blog.csdn.net/csnd_ayo
分离器
简述
英文原文
Split the binary sequence into subsequences of the same type, using sep as the delimiter string. If maxsplit is given and non-negative, at most maxsplit splits are done (thus, the list will have at most maxsplit+1 elements). If maxsplit is not specified or is -1, then there is no limit on the number of splits (all possible splits are made).
中文翻译
利用定界字符把二进制序列分离到同类的子序列当中。 如果给定了一个参数 maxsplit,且这个参数不是负数,分裂器至多会分裂出 maxsplit + 1 个元素 如果未给值,或者给了 -1作为值,那么就表示没有限制分裂数量(他会尽可能的分裂)
基础
字符串的分裂
示例代码
temp_str = "Today is a good day." list_str = temp_str.split(' ') print(list_str)
输出内容
['Today', 'is', 'a', 'good', 'day.']
小节总结
执行
split
函数后,正如介绍中说的那样,他根据参数(’ ‘)分割了字符串。
不难发现,这里打印的是一个列表。
应用
应征第二句翻译
代码示例
temp_str = "Today is a good day." print(temp_str.split(' ', maxsplit=2))
输出内容
['Today', 'is', 'a good day.']
应征第三句翻译
代码示例
temp_str = "Today is a good day." print(temp_str.split(' ', maxsplit=-1))
输出内容
['Today', 'is', 'a', 'good', 'day.']
总结
虽然很不想但还是把中文翻译贴了上来。
利用定界字符把二进制序列分离到同类的子序列当中。
如果给定了一个参数 maxsplit,且这个参数不是负数,分裂器至多会分裂出 maxsplit + 1 个元素。
如果未给值,或者给了 -1 作为值,那么就表示没有限制分裂数量(他会尽可能的分裂)。
引申
解析json
利用 split 解析如下字符串
temp_json='{"msg":"invalid_request_scheme:http","code":100,"request":"GET \/v2\/book\/isbn\/9787218087351"}'
结果
"msg" "invalid_request_scheme http" "code" 100 "request" "GET \/v2\/book\/isbn\/9787218087351"
答案
temp_json = '{"msg":"invalid_request_scheme: http","code":100,"request":"GET \/v2\/book\/isbn\/9787218087351"}' begin_index = temp_json.find("{") + 1 end_index = temp_json.find("}") strjson = temp_json[begin_index:end_index] listjson = strjson.split(",") for items in listjson: # print(items) for item in items.split(":"): print(item, end=" - ") print()
2017年4月27日: 分享博文到CSDN
2017年4月28日: 修改了中文翻译