去字符串两端的空格


任务:

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

解决方案:

  字符串对象的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. eclipse中的工程中有叉叉

    在eclipse中的工程中有叉叉,并且不是编译的错. 那么,让eclipse自己告诉你原因吧.菜单Window->Show View->Problems 然后就去解决相应的Problems ...

  2. BS架构与CS架构的区别

    C/S结构,即Client/Server(客户机/服务器)结构,是大家熟知的软件系统体系结构,通过将任务合理分配到Client端和Server端,降低了系统的通讯开销,可以充分利用两端硬件环境的优势. ...

  3. Ajax省市联动

    以JQuery为JS,写的Ajax省市联动. 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN&q ...

  4. testNG小试牛刀

    testNG是一个测试框架,其灵感来自JUnit和NUnit的,但引入了一些新的功能,使其功能更强大,使用更方便. testNG是一个开源自动化测试框架:testNG表示下一代. testNG是类似于 ...

  5. 内核MKDEV(MAJOR, MINOR)宏

    版本:linux-2.6.24.4宏:    MKDEV(MAJOR, MINOR);  说明: 获取设备在设备表中的位置.        MAJOR   主设备号        MINOR   次设 ...

  6. BZOJ 2326 数学作业(矩阵)

    题目链接:http://61.187.179.132/JudgeOnline/problem.php?id=2326 题意:定义Concatenate(1,N)=1234567……n.比如Concat ...

  7. [Codeforces673A]Bear and Game(水题,思路)

    题目链接:http://codeforces.com/contest/673/problem/A 题意:一个人看一个90分钟的节目,然后告诉你一些有趣的时刻.这个人假如在15分钟内还没有看到有趣的时刻 ...

  8. Codeforces Round #204 (Div. 2) C

    写了一记忆化 TLE了  把double换成long long就过了 double 这么耗时间啊 #include <iostream> #include<cstdio> #i ...

  9. URAL 1992

    CVS Description Yoda: Visit I will the cloners on Kamino... And see this army they have created for ...

  10. UVa 10129 Play On Words【欧拉道路 并查集 】

    题意:给出n个单词,问这n个单词能否首尾接龙,即能否构成欧拉道路 按照紫书上的思路:用并查集来做,取每一个单词的第一个字母,和最后一个字母进行并查集的操作 但这道题目是欧拉道路(下面摘自http:// ...