分享Python切分字符串的一个不错方法


Posted in Python onDecember 14, 2018

一同事问:有一字符串“abcdefghijklmn”如何用Python来切分,每四个一段,剩下的算一段。字符段切分,首先会想到split()和 re.split()函数,但仔细想了一下,这两个函数又不合适,因为,字符之间并没有空格,逗号,点号,TAB等分隔符,要切割的话很难实现。 只好退而求其次,使用常规方法:

>>> s = 'abcdefghijklmn'
>>> for i in range(0,len(s),4):
 print s[i:i+4]
 
abcd
efgh
ijkl
mn
>>>

或者使用列表解析来实现:

>>> [s[i:i+4] for i in range(0,len(s),4)]
['abcd', 'efgh', 'ijkl', 'mn']
>>>

有一个同事给出了非常巧妙的方法来实现:

>>> import re
>>> s = 'abcdefghijklmn'
>>> re.findall(r'\w{1,4}',s)
['abcd', 'efgh', 'ijkl', 'mn']

借助于re模块的findall函数,借助正则表达式来匹配,4个字符,匹配到了,自动分成一列,可谓非常巧妙!!!

以上这篇分享Python切分字符串的一个不错方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python httplib,smtplib使用方法
Sep 06 Python
python求斐波那契数列示例分享
Feb 14 Python
Python中的测试模块unittest和doctest的使用教程
Apr 14 Python
基于python实现微信模板消息
Dec 21 Python
Python读取指定目录下指定后缀文件并保存为docx
Apr 23 Python
centos6.5安装python3.7.1之后无法使用pip的解决方案
Feb 14 Python
用sqlalchemy构建Django连接池的实例
Aug 29 Python
pytorch实现Tensor变量之间的转换
Feb 17 Python
Python Websocket服务端通信的使用示例
Feb 25 Python
python GUI库图形界面开发之PyQt5布局控件QVBoxLayout详细使用方法与实例
Mar 06 Python
Python基础之hashlib模块详解
May 06 Python
Python多线程 Queue 模块常见用法
Jul 04 Python
在python中按照特定顺序访问字典的方法详解
Dec 14 #Python
对sklearn的使用之数据集的拆分与训练详解(python3.6)
Dec 14 #Python
python列表list保留顺序去重的实例
Dec 14 #Python
Python机器学习之scikit-learn库中KNN算法的封装与使用方法
Dec 14 #Python
Python面向对象之类的内置attr属性示例
Dec 14 #Python
python模糊图片过滤的方法
Dec 14 #Python
python 随机打乱 图片和对应的标签方法
Dec 14 #Python
You might like
数理公式,也可以这么唯美
2021/03/10 无线电
jQuery模拟超链接点击效果代码
2013/04/21 Javascript
一个简单的Node.js异步操作管理器分享
2014/04/29 Javascript
详解js闭包
2014/09/02 Javascript
JavaScript 学习笔记之数据类型
2015/01/14 Javascript
深入理解JavaScript系列(49):Function模式(上篇)
2015/03/04 Javascript
javascript判断数组内是否重复的方法
2015/04/21 Javascript
不想让浏览器运行javascript脚本的方法
2015/11/20 Javascript
jQuery插件AjaxFileUpload实现ajax文件上传
2016/05/05 Javascript
BootstrapTable与KnockoutJS相结合实现增删改查功能【二】
2016/05/10 Javascript
AngularJS中比较两个数组是否相同
2016/08/24 Javascript
获取select的value、text值的简单示例(jquery与javascript)
2016/12/07 Javascript
bootstrap 模态框(modal)实现水平垂直居中显示
2017/01/23 Javascript
angular中的http拦截器Interceptors的实现
2017/02/21 Javascript
详解Node.js开发中的express-session
2017/05/19 Javascript
vue.js移动端tab组件的封装实践实例
2017/06/30 Javascript
vue better-scroll插件使用详解
2018/01/25 Javascript
一个基于react的图片裁剪组件示例
2018/04/18 Javascript
[08:04]TI4西雅图DOTA2前线报道 海涛探访各路人马
2014/07/09 DOTA
[48:32]2018DOTA2亚洲邀请赛 3.31 小组赛 A组 LGD vs VG
2018/04/01 DOTA
Python实现文件内容批量追加的方法示例
2017/08/29 Python
NLTK 3.2.4 环境搭建教程
2018/09/19 Python
python实现windows壁纸定期更换功能
2019/01/21 Python
python之yield和Generator深入解析
2019/09/18 Python
python os.path.isfile()因参数问题判断错误的解决
2019/11/29 Python
EVE LOM英国官网:全世界最好的洁面膏
2017/10/30 全球购物
PacSun官网:加州生活方式服装、鞋子和配饰
2018/03/10 全球购物
西班牙香水和化妆品连锁店:Druni
2019/05/05 全球购物
七年级数学教学反思
2014/01/22 职场文书
促销活动总结
2014/04/28 职场文书
校优秀毕业生主要事迹
2014/05/26 职场文书
小学生关于梦想的演讲稿
2014/08/22 职场文书
餐厅开业活动方案
2019/07/08 职场文书
Python常遇到的错误和异常
2021/11/02 Python
在vue中import()语法不能传入变量的问题及解决
2022/04/01 Vue.js
Java Redisson多策略注解限流
2022/09/23 Java/Android