去字符串两端的空格


任务:

  获得一个开头和末尾都没有多余空格的字符串。

解决方案:

  字符串对象的lstrip、rstrip和strip 方法正是为这种任务而设计的。这几个方法都不需要参数,它们会直接返回一个删除了开头、末尾或者两端的空格的原字符串的拷贝。

参考代码:

>>> test_string = '   test   '

>>> print '|',test_string.lstrip(),'|',test_string.rstrip(),'|',test_string.strip(),'|'
| test | test | test |

小结:

这三个函数方法都可传入一个参数,指定要去除的首尾字符。

需要注意的是,传入的参数是一个字符数组,编译器去除两端所有相应的字符,直到没有匹配的字符,比如:

参数是"say",则去除首尾在['s','a','y']数组内的字符,直到字符在不数组内。

合并字符串


任务:

  有一些小的字符串,把这些小字符串合并成一个大字符串。

解决方案:

  可以使用字符串操作符join。

代码如下:

>>> a = 'qwer'
>>> b = '+'.join(a)
>>> b
'q+w+e+r'
>>> c=''.join(a)
>>> c
'qwer'
>>> d = ' '.join(a)
>>> d
'q w e r'

  如果想把存储在一些变量中的字符串拼接起来,那么使用字符串格式化操作符%

例如:largeString = '%s%s something %s yet more ' % (small1,small2,small3)

将字符串逐字符或者逐词反转


任务:

  把字符串逐字符或者逐词反转过来。

解决方案:

  字符串无法改变,所以,反转一个字符串需要创建一个拷贝。最简单的方法是使用一种“步长”为 -1 的Teva的切片方法 ,这样可立即产生一个完全反转的效果:

  revchars = astring[::-1]

  如果要按照单词来反转字符串,我们需要先创建一个单词的列表,将这个列表反转,最后再用join方法将其合并,并在相邻之间都插入一个空格:

示例代码:

>>> a = "I am a Pythoner"
>>> b = a.split()
>>> b.reverse()
>>> b = ''.join(b)
>>> b
'PythoneraamI'
>>> b = ' '.join(b)
>>> b
'P y t h o n e r a a m I'

<追赶进度,落后4节内容>

《Python CookBook2》 第一章 文本 - 去字符串两端的空格 && 合并字符串 && 将字符串逐字符或者逐词反转的更多相关文章

  1. Python字符串逐字符或逐词反转方法

    Python字符串逐字符或逐词反转方法 这篇文章主要介绍了Python字符串逐字符或逐词反转方法,本文对逐字符或逐词分别给出两种方法,需要的朋友可以参考下 目的 把字符串逐字符或逐词反转过来,这个蛮有 ...

  2. python cookbook学习笔记 第一章 文本(2)

    1.6合并字符串 ka=list('kaluoc') #字符串转成字符串列表 print ''.join(ka) #大量的字符串相连,join是最高效的 print '%s%s something % ...

  3. python cookbook学习笔记 第一章 文本(1)

    1.1每次处理一个字符(即每次处理一个字符的方式处理字符串) print list('theString') #方法一,转列表 结果:['t', 'h', 'e', 'S', 't', 'r', 'i ...

  4. web前端学习python之第一章_基础语法(一)

    web前端学习python之第一章_基础语法(一) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...

  5. web前端学习python之第一章_基础语法(二)

    web前端学习python之第一章_基础语法(二) 前言:最近新做了一个管理系统,前端已经基本完成, 但是后端人手不足没人给我写接口,自力更生丰衣足食, 所以决定自学python自己给自己写接口哈哈哈 ...

  6. [Python笔记][第一章Python基础]

    2016/1/27学习内容 第一章 Python基础 Python内置函数 见Python内置函数.md del命令 显式删除操作,列表中也可以使用. 基本输入输出 input() 读入进来永远是字符 ...

  7. python基础第一章

    Python基础 第一个python程序 变量 程序交互 基本数据类型 格式化输出 基本运算符 流程控制if...else... 流程控制-循环 第一个python程序 文件执行 1.用notepad ...

  8. python 教程 第一章、 简介

    第一章. 简介 官方介绍: Python是一种简单易学,功能强大的编程语言,它有高效率的高层数据结构,简单而有效地实现面向对象编程.Python简洁的语法和对动态输入的支持,再加上解释性语言的本质,使 ...

  9. python学习 第一章(说不定会有第零章呢)one day

    ------------恢复内容开始------------ 一.啥是python python是吉尔·范罗苏姆于1989年开发的一个新的脚本解释程序,是ABC语言的一种继承. 二.python的特点 ...

随机推荐

  1. 深入浅出Java并发包—锁机制(一)

    前面我们看到了Lock和synchronized都能正常的保证数据的一致性(上文例子中执行的结果都是20000000),也看到了Lock的优势,那究竟他们是什么原理来保障的呢?今天我们就来探讨下Jav ...

  2. Spring 3.0: Unable to locate Spring NamespaceHandler for XML schema namespace

    被这个问题折磨着很久:参考: http://have23.iteye.com/blog/1340777 (cfx 与 spring 整合的时候出现的问题: org.springframework.be ...

  3. springmvc图片上传

    //-------------------------------------上传图片--------------------------------------------------- @Requ ...

  4. AndroidRichText 让Textview轻松的支持富文本(图像ImageSpan、点击效果等等类似QQ微信聊天)

    代码地址:https://github.com/Luction/AndroidRichText AndroidRichText帮助实现像QQ,微信一样的,一个TextView里既有文字又有表情又有图片 ...

  5. Objective-C命名编写规范

    There are only two hard things in Computer Science: cache invalidation and naming things. 在计算机科学中只有两 ...

  6. windows/ubuntu 文件共享之 Samba 配置

    很多时候需要在windows上和ubuntu 上共享文件,一直没怎么去找方法,得知Samba 可以实现在windows上访问linux的文件,这样一来要从windows文件放到linux中就方便了,听 ...

  7. CentOS 6.5系统使用yum方式安装LAMP环境和phpMyAdmin详细过程

    介绍如何在CentOs6.2下面使用YUM配置安装LAMP环境,一些兄弟也很喜欢使用编译的安装方法,个人觉得如果不是对服务器做定制,用yum安装稳定简单,何必去download&make&am ...

  8. fzu Problem 2148 Moon Game(几何 凸四多边形 叉积)

    题目:http://acm.fzu.edu.cn/problem.php?pid=2148 题意:给出n个点,判断可以组成多少个凸四边形. 思路: 因为n很小,所以直接暴力,判断是否为凸四边形的方法是 ...

  9. svn url does not contain valid patch

    想把项目上传到svn上,由于误点击了apply patch.所以出现下面的错误. 正确做法是在项目上右击找到Team----share Project 如图: 点击share project后出现如图 ...

  10. 宏buf_pool_t

    typedef struct buf_pool_struct buf_pool_t; struct buf_pool_struct{ /** @name General fields */ /* @{ ...