Python中关于字符串对象的一些基础知识

 更新时间:2015年04月08日 11:07:25   投稿:goldensun  
这篇文章主要介绍了详解Python中的字符串对象,关于字符串的操作和特性是Python学习当中的基础知识,需要的朋友可以参考下

Python的字符串被划分为不可变序列的类别,意味着这些字符串所包含的字符存在从左至右的位置顺序,并且它们不可以在本地进行修改。

基本操作

字符串可以通过+操作符进行合并,可以使用*运算符进行重复。
 

>>>len("abc")
3
>>>'abc'+'def'
'abcdef'
>>>'NI!'*4
'NI!NI!NI!NI!'

字符串内部的一个反斜杠“\”可允许把字符串放于多行。
 

>>>str = "aaa\
  ....bbb\
  ....ccc\
  ....ddd"
>>>str
aaabbbcccddd

索引和分片

在Python中,字符串中的字符是通过索引提取的。
分片X[I:J],表示“取出在X中从偏移量为I,直到但不包括偏移量为J的内容”。结果就是返回一个新的对象。
在一个分片中,左边界默认为0,右边界默认为分片序列的长度。
 

S = 'Spam'
>>>S[1:]
'pam'
>>>S
'Spam'
>>>S[:3]
'Spa'
>>>S[:-1]
'Spa'
>>>S[:]
'Spam'
S[:]实现了一个完全的顶层的序列对象的拷贝-一个有相同值,但是是不同内存片区的对象。
X[I:J:K]表示“索引x对象中的元素,从偏移为I直到偏移为J-1,每隔K元素索引一次“,第三个限制K,默认为1,表示步进。
也可以使用负数作为步进,S[::-1]的作用实际上是将序列进行发转。
 
>>>S = 'hello'
>>>S[::-1]
'olleh'

字符串转化工具

int函数将字符串转换为数字,str函数将数字转换为字符串表达形式。repr函数也能够将一个对象转换为其字符串形式,然后这些返回的对象将作为代码的字符串,可以重新创建对象。

不可变性

字符串属于不可变序列,即不能在原地修改一个字符串,例如,给一个索引进行赋值。若要改变一个字符串,需要利用合并,分片这样的工具来建立并赋值给一个新的字符串,倘若必要的话,还要将这个结果赋值给字符串最初的变量名。
 

>>>S = 'spam'
>>>S[0] = "x"
#不允许修改S的值
 
>>>S = S + "SPAM"
>>>S
'spamSPAM'
 
>>>S = 'splot'
>>>S = S.replace('pl', 'plmal')
>>>S
'splmalot'

相关文章

  • Python实现的Google IP 可用性检测脚本

    Python实现的Google IP 可用性检测脚本

    这篇文章主要介绍了Python实现的Google IP 可用性检测脚本,本文脚本需要Python 3.4+环境,需要的朋友可以参考下
    2015-04-04
  • python偏函数的实例用法总结

    python偏函数的实例用法总结

    在本篇文章里小编给大家整理的是一篇关于python偏函数的实例用法总结内容,有兴趣的朋友们可以跟着学习参考下。
    2021-07-07
  • Python计算时间间隔(精确到微妙)的代码实例

    Python计算时间间隔(精确到微妙)的代码实例

    今天小编就为大家分享一篇关于Python计算时间间隔(精确到微妙)的代码实例,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • Matplotlib可视化之添加让统计图变得简单易懂的注释

    Matplotlib可视化之添加让统计图变得简单易懂的注释

    今天给大家带来的文章是关于Python的,文章围绕着Python Matplotlib可视化展开,文中非常详细的介绍了如何给统计图添加注释,需要的朋友可以参考下
    2021-06-06
  • Python中的//符号是什么意思呢

    Python中的//符号是什么意思呢

    这篇文章主要介绍了Python中的//符号是什么意思,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • python 写入csv乱码问题解决方法

    python 写入csv乱码问题解决方法

    这篇文章主要介绍了python 写入csv乱码问题解决方法的相关资料,需要的朋友可以参考下
    2016-10-10
  • Python实用技巧之轻松处理大型文件

    Python实用技巧之轻松处理大型文件

    Python在文件处理方面提供了非常强大的支持,然而,当处理大型文件时,标准的文件处理技术会导致高内存使用,所以下面我们就来看看如何在Python中有效地处理大型文件吧
    2024-03-03
  • django 2.2和mysql使用的常见问题

    django 2.2和mysql使用的常见问题

    这篇文章主要介绍了django 2.2和mysql使用的常见问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-07-07
  • Flask框架配置与调试操作示例

    Flask框架配置与调试操作示例

    这篇文章主要介绍了Flask框架配置与调试操作,结合实例形式简单分析了flask框架配置管理与调试模式简单操作技巧,需要的朋友可以参考下
    2018-07-07
  • 关于pyqtSignal的基本使用

    关于pyqtSignal的基本使用

    这篇文章主要介绍了关于pyqtSignal的基本使用方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-06-06

最新评论