Python编程之string相关操作实例详解

yipeiwu_com6年前Python基础

本文实例讲述了Python编程之string相关操作。分享给大家供大家参考,具体如下:

#coding=utf8
'''''
字符串是Python中最常见的类型。可以通过引号见包含字符的方式创建。
Python里面单引号和双引号的作用是相同的。
字符串是不可变类型,就是说改变一个字符串的元素需要新建一个新的字符串。
字符串是由独立的字符组成,并且这些字符可以通过切片操作顺序地访问。
'''
class StringClass(object):
  '''''
  创建一个字符串就像使用一个标量一样简单。
  也可以使用str工厂函数来创建一个字符串并把它赋值给一个变量。
  '''
  #使用单引号创建字符串并赋值
  aString='signal quote'
  #使用双引号创建字符串并赋值
  anotherString="double quote"
  #使用工厂函数str把一个列表转换成一个字符串
  StringByStr=str(range(len(aString)))
  def ouput(self):
      print '''''aString:%s
anotherString:%s
StringByStr:%s''' %(self.aString,self.anotherString,self.StringByStr)
  #访问字符串的值(字符和子串)
  def getStringValue(self):
    '''''
    Python里面没有字符这个类型,而是用长度为1的字符串来表示字符这个概念。
    用方括号加一个或多于一个索引的方式来获得子串。
    '''
    #获取字符串中某个字符的值
    char=self.aString[2]
    print "aString的第三个字符是:",char
    #获取字符串从第一个到第六个个字符之间的子串
    subString=self.anotherString[0:5]
    print "anotherString第一个到第六个字符间的子串:",subString
    #获取字符串偶数为的字符
    evenSubString=self.anotherString[1::2]
    print "anotherString的偶数位字符串是:",evenSubString
  #改变字符串的值
  def changeString(self):
    '''''
    给变量赋值的方式更新一个已有的字符串。
    字符串类型是不可变的,要改变一个字符串就必须通过创建一个新串的方式来实现。
    不能只改变字符串中的一个字符或者一个子串。
    但是允许拼凑一个旧串的各个部分来得到一个新串。
    '''
    print self.aString,"aString的id:",id(self.aString),
    self.aString+=",python"
    print self.aString, "aString的id:",id(self.aString)
    #错误的操作,不允许改变字符串中的一个字符或者子串
    #self.aString[2]="h"
    #print self.aString
    #self.aString[0:2]="he"
    #print self.aString
  #删除字符和字符串
  def delString(self):
    '''''
    字符串是不可变的,不能仅仅删除一个字符串的某个字符,
    能清空一个空字符串,或者把不需要的部分通过切片操作组成一个新串。
    '''
    self.StringByStr=self.StringByStr[:3]+self.StringByStr[8:]
    print self.StringByStr
    #通过赋一个空字符串来清空一个字符串
    self.StringByStr=''
    print self.StringByStr
    #通过del删除一个字符串
    try:
      del self.StringByStr
      print self.StringByStr
    except BaseException,e:
      print e
def test():
  StrObj=StringClass()
  StrObj.ouput()
  StrObj.getStringValue()
  StrObj.changeString()
  StrObj.delString()
if __name__=="__main__":
  test()

运行结果:

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python字符串操作技巧汇总》、《Python编码操作技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》及《Python入门与进阶经典教程》。

希望本文所述对大家Python程序设计有所帮助。

相关文章

Python命令行参数解析工具 docopt 安装和应用过程详解

什么是 docopt? 1、docopt 是一种 Python 编写的命令行执行脚本的交互语言。 它是一种语言! 它是一种语言! 它是一种语言! 2、使用这种语言可以在自己的脚本中,添...

python函数式编程学习之yield表达式形式详解

前言 yield的英文单词意思是生产,刚接触Python的时候感到非常困惑,一直没弄明白yield的用法。最近又重新学习了下,所以整理了下面这篇文章,供自己和大家学习参考,下面话不多说了...

python3.x上post发送json数据

python3.x上post发送json数据

一.摘要 做接口自动化测试时,常常需要使用python发送一些json内容的接口报文,如果使用urlencode对内容进行编码解析并发送请求,会发现服务器返回了200,OK的状态,但响应...

Python 不同对象比较大小示例探讨

万恶的源泉: Fireboo的疑问(当然 lambda 本身写的就有问题): >>> filter( lambda x: x > 2, [ 1, [ 1, 2...

在django view中给form传入参数的例子

在django的form表单会出现,在form的验证或者保存时需要非form中的field的信息参数。例如在对操作进行记录,我们需要根据将记录的操作人设置为当前的用户,所以在view中我...