详解Python中的文本处理

本文详细介绍了Python中的字符串处理,包括不可变序列特性、分片操作、in关键字的使用,以及字符串文字的创建。同时,探讨了文件和字符串变量的交互,如.read(), .readline(), .readlines()方法,并强调了cStringIO模块在处理字符串时的作用。此外,文章还重点讨论了标准模块string和re,强调了string模块的便捷性和re模块的复杂但强大功能,特别是规则表达式的概念和应用。" 120493582,9336252,海思平台GPIO模拟SPI驱动详解,"['嵌入式开发', '硬件驱动', 'GPIO驱动', 'SPI通信', '海思平台开发']
摘要由CSDN通过智能技术生成

字符串 -- 不可改变的序列

如同大多数高级编程语言一样,变长字符串是 Python 中的基本类型。Python 在“后台”分配内存以保存字符串(或其它值),程序员不必为此操心。Python 还有一些其它高级语言没有的字符串处理功能。

在 Python 中,字符串是“不可改变的序列”。尽管不能“按位置”修改字符串(如字节组),但程序可以引用字符串的元素或子序列,就象使用任何序列一样。Python 使用灵活的“分片”操作来引用子序列,字符片段的格式类似于电子表格中一定范围的行或列。以下交互式会话说明了字符串和字符片段的的用法:

字符串和分片

>>> s =
"mary had a little lamb"
>>> s[0]
# index is zero-based

'm'
>>> s[3] =
'x'
# changing element in-place fails
Traceback (innermost last):
File
"<stdin>", line 1,
in
?
TypeError: object doesn't support item assignment
>>> s[11:18]
# 'slice' a subsequence

'little '
>>> s[:4]
# empty slice-begin assumes zero

'mary'
>>> s[4]
# index 4 is not included in slice [:4]

' '
>>> s[5:-5]
# can use "from end" index with negatives

'had a little'
>>> s[:5]+s[5:]
# slice-begin & slice-end are complimentary

'mary had a little lamb'

另一个功能强大的字符串操作就是简单的 in 关键字。它提供了两个直观有效的构造:

in 关键字


>>> s =
"mary had a little lamb"
>>>
for
c
in
s[11:18]:
print
c,
# print each char in slice
...
l i t t l e
>>>
if
'x'
in
s:
print
'got x'
# test for char occurrence
...
>>>
if
'y'
in
s:
print
'got y'
# test for char occurrence
...
got y

在 Python 中,有几种方法可以构成字符串文字。可以使用单引号或双引号,只要左引号和右引号匹配,常用的还有其它引号的变化形式。如果字符串包含换行符或嵌入引号,三重引号可以很方便地定义这样的字符串,如下例所示:

三重引号的使用


                
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值