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

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

相关文章

在python3环境下的Django中使用MySQL数据库的实例

在python3环境下的Django中使用MySQL数据库的实例

我们在使用Django过程中,数据库往往是离不开的,比较长常用的是MySQL数据库,但在使用过程中,对Python不同的版本对用的库也不一样,用惯了Python2的人在使用Python3...

让python在hadoop上跑起来

让python在hadoop上跑起来

本文实例讲解的是一般的hadoop入门程序“WordCount”,就是首先写一个map程序用来将输入的字符串分割成单个的单词,然后reduce这些单个的单词,相同的单词就对其进行计数,不...

python查看FTP是否能连接成功的方法

本文实例讲述了python查看FTP是否能连接成功的方法。分享给大家供大家参考。具体如下: #!/usr/local/bin/python #-*- coding: UTF-8 -*...

在Python下尝试多线程编程

多任务可以由多进程完成,也可以由一个进程内的多线程完成。 我们前面提到了进程是由若干线程组成的,一个进程至少有一个线程。 由于线程是操作系统直接支持的执行单元,因此,高级语言通常都内置多...

python实现感知机线性分类模型示例代码

python实现感知机线性分类模型示例代码

前言 感知器是分类的线性分类模型,其中输入为实例的特征向量,输出为实例的类别,取+1或-1的值作为正类或负类。感知器对应于输入空间中对输入特征进行分类的超平面,属于判别模型。 通过梯度...