Python列表split方法

转载自:https://www.cnblogs.com/douzi2/p/5579651.html

1、split翻译为分裂。  split()就是将一个字符串分裂成多个字符串组成的列表。

2、split()当不带参数时以空格进行分割,当带参数时,以该参数进行分割。

  a、当不带参数时

  st0= '   song    huan     gong    '

  print(st0.split())

   结果为:

  ['song', 'huan', 'gong']

   结论:当不带参数时,默认是以空格作为参数,不管空格在哪,或者有几个 全部被镐掉了!

  b、当带参数时 这种情况就不能按照上面的方式去理解了

  st0= 'iisongiiihuaniiiigongi'

  print(st0.split('i'))

   结果为:

  ['', '', 'song', '', '', 'huan', '', '', '', 'gong', ''

  c、这个结果可能就有点出乎意料了并不是想象中的['song', 'huan', 'gong'] 而是多了很多空字符串元素'',这个怎么理解呢?    我的理解方式是,当带参数时,我们得把字符串想象成一块五花肉,我们要做 一件奇葩的事情,就是将肥肉丢到垃圾桶,把瘦肉留下。  比如'iisongiiihuaniiiigongi'这串五花肉,'i'就是要丢掉的肥肉,每次还只能切 'i'这么多。  切的时候是从左到右,一刀下去肥肉'i'丢掉,刀刃左边的部分拿走作为list的一个元素, 刀刃右边的就是剩下的,那么继续切剩下的部分,直到切完。

 'iisongiiihuaniiiigongi'这块肉比较特殊:  

  d、其一、他的开始和结尾都有i,而且i还不止一个!这样按照上述的方法就会切出 空气,就是列表中我们看到的'', 空字符串元素。    如'iisongiiihuaniiiigongi',当第一刀下去的时候,第一个i被丢到了垃圾桶, 而刀刃的左边什么都没有,所以列表的第一个元素就是'',空字符串元素。  一刀下去之后,就剩下'isongiiihuaniiiigongi'。  所以第二刀下去之后,又得到一个空字符串元素,目前“肉”就剩下'songiiihuaniiiigongi'。  第三刀又切掉一个i,那么刀刃左边的就是song,所以第三个元素就是'song'。    直到切到最后,整坨肉就只剩下一个i了,使用最后一刀下去i被切掉了,刀刃的左边此时也 什么都没有了,所以最后一个元素任然是空字符串。  

3、一个超级好的例子:

>>> str="hello boy<[www.doiido.com]>byebye"
>>> str.split("[")[1].split("]")[0]
'www.doiido.com'
>>> str.split("[")[1].split("]")[0].split(".")
['www', 'doiido', 'com']

 

转载于:https://www.cnblogs.com/Presley-lpc/p/9130009.html

Pythonsplit方法是用于将字符串按照指定的分隔符进行分割,并返回一个包含分割后的子字符串的列表split方法有两个参数,第一个参数是分隔符,表示按照哪个字符或字符串进行分割,默认为空格、制表符和换行符。第二个参数是可选的,表示分割的次数,默认值为-1,即全部分割。如果指定了次数n,则会得到n+1个元素。\[1\] 下面是一些使用split方法的示例: ```python str = "1,2,3" x, y, z = str.split(',') print(x, y, z) # 输出:1 2 3 str = "I love china!" print(str.split()) # 输出:\['I', 'love', 'china!'\] str = "www.bing.com.com" print(str.split('.', -1)) # 输出:\['www', 'bing', 'com', 'com'\] print(str.split('.')) # 输出:\['www', 'bing', 'com', 'com'\] print(str.split('.')\[1\]) # 输出:bing str = "www.bing.com.com" print(str.split('.', 2)) # 输出:\['www', 'bing', 'com.com'\] print(str.split('.')\[1\].split('i')) # 输出:\['b', 'ng', 'com.com'\] str = 'aaa"bbb' print(str.split('"')) # 输出:\['aaa', 'bbb'\] ``` 总结来说,split方法可以根据指定的分隔符将字符串分割成多个子字符串,并返回一个列表。可以根据需要选择分割次数,或者对分割后的子字符串再次进行分割。\[2\]\[3\] #### 引用[.reference_title] - *1* [Pythonsplit函数的用法](https://blog.csdn.net/Kxiansheng111/article/details/130045179)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [Python split()方法](https://blog.csdn.net/weixin_44438120/article/details/106040431)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值