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

yipeiwu_com7年前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程序设计有所帮助。

相关文章

pymongo实现控制mongodb中数字字段做加法的方法

本文实例讲述了pymongo实现控制mongodb中数字字段做加法的方法。分享给大家供大家参考。具体分析如下: 这个非常实用,比如我们需要给文章做访问统计,可以设置一个数字字段:hit,...

用C++封装MySQL的API的教程

其实相信每个和mysql打过交道的程序员都应该会尝试去封装一套mysql的接口,这一次的封装已经记不清是我第几次了,但是每一次我希望都能做的比上次更好,更容易使用。 先来说一下这次的封装...

自定义django admin model表单提交的例子

自定义django admin model表单提交的例子

如下所示: 希望可以从对admin提交的密码加密,并验证电话号码均为数字。 查看admin.py from django.contrib import admin class co...

python中range()与xrange()用法分析

python中range()与xrange()用法分析

本文实例讲述了python中range()与xrange()用法。分享给大家供大家参考,具体如下: 据说range比xrange开销要大,原因是range会直接生成一个list对象,而x...

在Pandas中给多层索引降级的方法

# 背景介绍 通常我们不会在Pandas中主动设置多层索引,但是如果一个字段做多个不同的聚合运算, 比如sum, max这样形成的Column Level是有层次的,这样阅读非常方便,但...