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

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

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

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

Python以特定方式对字符串进行分割的方法

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

Python以特定方式对字符串进行分割的方法

解决方法

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

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

Python以特定方式对字符串进行分割的方法

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

Python以特定方式对字符串进行分割的方法

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

Python以特定方式对字符串进行分割的方法

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

Python以特定方式对字符串进行分割的方法

运行结果如下:

Python以特定方式对字符串进行分割的方法

结论

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

相关文章: