Python语言编程系列004——以特定方式对字符串进行分割的方法

问题提出

在Python语言中,对于一个给定的字符串,要求处理后得到的一个新字符串满足以下两个条件:

字符串中包含的字母全部转换为大写字母

每2个字符之间以空格进行分割

在Python语言中应怎样代码实现呢?如对于下面的字符串:

处理后得到的一个新字符串应为:

解决方法

此处列出三种方法,写了三个函数实现这个功能,供大家参考。

方法1,在for循环中每次取2个字符,直接以“+”运算符与空格连接,函数代码如下:

方法2,使用正则表达式模块re,进行匹配处理并以字符串的“join”函数连接,函数代码如下:

方法3,使用字符串的“join”函数连接,与使用For循环不同的是,使用列表推导的方式得到待连接的字符串数组,函数代码如下:

使用上面的三种方法都可以实现上面提出的功能要求。那么,这三种方法在运行效率上哪种好呢?下面对原字符串扩充为其100倍长度,然后执行10000次处理,看执行结果如何。完整的测试代码如下:

运行结果如下:

结论

从其耗时结果上看,第一种方法最慢,第二、三种方法较好。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180901A0FVU000?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券