Python字符串类型的详细介绍


Python字符串类型在使用的时候会有许多知识需要大家学习,下面我们来看看如何进行细致的学习,这样对今后更好的使用有很大帮助。希望大家有所收获。

  • 常见Python应用范围总结概览
  • Python程序转为EXE文件正确实现方法讲解
  • Python绑定C++程序具体实现方法浅谈
  • Python显示UTF-8中文文本具体操作方法讲
  • Python对象主要特征解析

中的序列是由非负整数索引的对象的有序集合真拗口,其实意思就是下标从0开始),它包括字符串、Unicode字符串、列表、元组、xrange对象以及缓冲区对象。后两种类型我们先不介绍,后边用到时再说明。

Python字符串类型

Python拥有两种字符串类型:标准字符串str)是单字节字符序列,Unicode字符串unicode)是双字节字符序列。

在Python中定义一个标准字符串str)可以使用单引号、双引号甚至三引号,这使得Python输入文本比C#更方便。比如当str的内容中包含双引号时,就可以用单引号定义,反之亦然。当字符中有换行符等特殊字符时,可以直接使用三引号定义。这样就方便了很多,不用去记那些乱七八糟的转义字符。当然Python也支持转义字符,且含义和C#基本一样。不过既然有简单的东西用,谁还去自找麻烦呢?

下边是一个例子,来说明以上几点:

  1. str1 = 'I am "Python"\n' 
  2. str2 = "I am 'Python'\r" 
  3. str3 = """  
  4. I'm "Python",  
  5. <a href="http://Csharp.com">you are C#</a> 
  6. """ #你可以把html代码之类的东西直接弄进来而不需要做特殊处理7 print str1,str2,str3 

在Python中定义一个Unicode字符串,需要在引号前面加上一个字符u,例如

  1. # -*- coding: utf-8 -*-  
  2. print u'我是派森'  

这点没有C#方便,因为C#字符串默认就是Unicode的,我想Python如果要改进,应该把两种字符串合二为一,这样可以为初学者减少很多麻烦你看网上有多少帖子是在问Python怎么支持中文?根源都在这里)。同时注意,当使用utf-8编码时,非unicode字符中一个汉字的长度是3,而使用gb2312时是2,见下边代码:

  1. # -*- coding: utf-8 -*-   
  2. unicode = u'我'   
  3. str = '我'   
  4. print len(unicode),len(str)   
  5. #输出 1 3 6 7 # -*- coding: gb2312 -*-   
  6. unicode = u'我'   
  7. str = '我' 
  8. print len(unicode),len(str)#输出 1 2 

另外,Python字符串类型没有C#中的字符类型,再短的文本也是字符串,这点稍微注意一下就可以,因为现在使用C#的也很少用char了吧?

最后,关于字符串的操作方法,基本上C#有的Python都有,可以看看Python字符串类型手册之类的资料,我就不多说了。唯一提一点就是在Python中提取一个字符串的子串时,记得用“切片”语句后边讲列表和元组时还会介绍),而不要再去找SubString了,见下边的例子:

  1. # -*- coding: utf-8 -*-  
  2. str1 = u'我是派森' 
  3. print str1[2:4]  
  4. #输出 '派森'  

以上就是对Python字符串类型的详细介绍。

相关内容

    暂无相关文章

评论关闭