Python多种方法实现句子中单词倒置(好未来2017笔试题)

问题描述:将一句话的单词进行倒置,标点不倒置。比如 I like beijing. 经过函数后变为:beijing. like I

代码:

def rev1(s): return ' '.join(reversed(s.split()))

def rev2(s): t = s.split() t.reverse() return ' '.join(t)

def rev3(s): '''考虑开头或结束有空格的情况''' import re t = re.split('\s+', s.strip()) t.reverse() return ' '.join(t)

def rev4(s): '''考虑开头或结束有空格的情况''' import re t = re.split('\s+', s.strip()) return ' '.join(reversed(t))

def rev5(s): '''字符串整体逆序,分隔,再各单词逆序''' t = ''.join(reversed(s)).split() t = map(lambda x:''.join(reversed(x)), t) return ' '.join(t)

#测试

import string import random

source = string.ascii_letters + ' ,.?' for i in range(100000): s = ''.join((random.choice(source) for _ in range(100))) s1, s2, s3, s4,s5 = rev1(s), rev2(s), rev3(s), rev4(s), rev5(s) if not (s1==s2==s3==s4==s5): print('='*30) print('{0}\n{1}\n{2}\n{3}\n{4}\n{5}'.format(s,s1,s2,s3,s4,s5))

运行结果:

无输出,说明几种方法处理结果一致。

本文分享自微信公众号 - Python小屋(Python_xiaowu)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-03-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏尾尾部落

[剑指offer] 二进制中1的个数

如果一个整数不为0,那么这个整数至少有一位是1。如果我们把这个整数减1,那么原来处在整数最右边的1就会变为0,原来在1后面的所有的0都会变成1(如果最右边的1后...

27420
来自专栏Java帮帮-微信公众号-技术文章全总结

Java面试系列9

✎一、Java有没有goto? java中的保留字,现在没有在java中使用。 ✎二、必须要知道的运行时异常 ArithmeticException 是...

28940
来自专栏杨建荣的学习笔记

MySQL字符串中抽取数值的方法

MySQL的字符串函数非常多,以至于有时候我不知道该如何灵活的使用这些函数。 字符串基本信息函数 collation convert,char_len...

30880
来自专栏前端迷

很实用的前端开发规范

1.标准变量命名使用驼峰式命名 eg. let thisIsMyName; 2.常量全部大写,并使用下划线连接 eg. const MAX_COUNT = 10...

13420
来自专栏运维小白

linux基础(day27)

9.4 sed(上) sed工具 sed -n '5'p test.txt sed -n '1,5'p test.txt sed -n '1,$'p test....

20070
来自专栏Java 源码分析

并查集

​ 在我们需要判断某一些事物之间是否存在一定的关系的时候,我们最好的办法不是使用图而是使用并查集。因为我们关心的是他们之间是否有关系,而不是关心的他们到底...

37370
来自专栏转载gongluck的CSDN博客

C++:istreambuf_iterator与istream_iterator的区别

在C++中,流(stream)也可以看做是容器,因而也有相应的iterator来遍历流中的内容,其中就有本文要介绍的两个流迭代器:istreambuf_iter...

37190
来自专栏章鱼的慢慢技术路

Go指南_指针接收者

11620
来自专栏伪君子的梦呓

题解 ~ 简单的a+b ~ C++ 做法

13440
来自专栏tkokof 的技术,小趣及杂念

[译]C++17,optional, any, 和 variant 的更多细节

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/tkokof1/article/details/826...

17620

扫码关注云+社区

领取腾讯云代金券