六、字符串操作

关于《python编程快速上手-让繁琐工作自动化》的学习笔记

1.处理字符串

  • 字符串字面量
    输入字符串值:以单引号开始和结束
  • 双引号
    字符串可以用双引号开始和结束,这样可以在字符串中使用单引号字符;但是如果字符串中既要使用单引号又要使用双引号,就要使用转义字符
>>>spam="That is Alice's cat"
  • 转义字符

转义字符包含一个倒斜杠(\)和想要添加到字符串中的字符

转义字符打印为
\’单引号
\’’双引号
\t制表符
\n换行符
\\倒斜杠
>>>print("Hello there!\nHow are you?\nI\'m doing fine.")
Hello there!
How are you?
I'm doing fine.
  • 原始字符串
    在字符串开始的引号前加上r,使之成为原始字符串。原始字符串会忽略所有的转义字符,打印出字符串中所有的倒斜杠(此时相当于倒斜杠是字符串的一部分)
>>>print(r'That is Carol\'s cat.')
That is Carol\'s cat.
  • 用三重引号的多行字符串
    多行字符串的起止是3个单引号或双引号。“三重引号”之间的所有引号、制表符或换行都被认为是字符串的一部分。python的代码块缩进规则不适用于多行字符串
print('''Dear Alice,
How are you?
Sincerely,
Bob''')

#输出:
Dear Alice,
How are you?
Sincerely,
Bob
  • 多行注释
    #表示这一行是注释,多行字符串也常常用于多行注释
"""
This is a test

Written by someone
"""
  • 字符串下标和切片
    字符串像列表一样,使用下标和切片
  • 字符串的in和not in操作符
    使用in和not in连接两个字符串得到的表达式,将求值为布尔值True或Flase
>>>'hello' in 'hello world'
True
>>>'HELLO' in 'hello world'
Flase

2.有用的字符串方法

  • 字符串方法upper()、lower()、isupper()和islpwer()
    • upper()和lower()字符串方法返回一个新字符串,其中原有字符串分所有字母都被相应的转换为大写或小写(这样本身并没有改变字符串本身而是返回一个新字符串)
    >>>spam='hello world!'
    >>>spam=spam.upper()
    >>>spam
    'HELLO WORLD!'
    >>>spam=spam.lower()
    >>>spam
    'hello world!'
    
    • 如果字符串至少有一个字母,并且所有字母都是大写或小写,isupper()和islower()方法会相应地返回布尔值True,否则返回Flase
    >>>spam='hello world'
    >>>spam.islower()
    True
    >>>'abc123'.islower()
    True
    >>>'123'.islower()
    Flase
    
  • isX字符串方法
    • isalpha()返回True(如果字符串只包含字母并且非空)
    • isalnum()返回True(如果字符串只包含字母和数字并且非空)
    • isdecimal()返回True(如果字符串只包含数字字符并且非空)
    • isspace()返回True(如果字符串只包含空格、制表符和换行并且非空)
    • istitle()返回True(如果字符串只包含以大写字母开头、后面都是小写字母的单词或句子)
  • 字符串方法startswith()和endswith()
    startswith()和endswith()方法返回True,如果它们所调用的字符串以该方法传入的字符串开始或结束;否则返回Flase
>>>'hello world!'.startswith('hello')
True
>>>hello world!'.startswith('world!')
Flase
  • 字符串方法join()和split()
    • join()方法将一个字符串列表连接起来使之成为一个单独的字符串(join()方法在一个字符串上调用,参数是一个字符串列表,返回一个由传入的列表中每个字符串连接而成的字符串)
    >>>' '.join(['hello','world','!'])
    'hello world !'
    
    调用join()方法的字符串将会被插入到列表参数中每个字符串的中间,返回相应的字符串
    • split()将字符串分割为一个字符串,返回一个字符串列表(默认情况下,按照各种空白字符分割,诸如空格、制表符或换行符;也可以向split()方法传入一个分割字符串,使之按照指定的字符串分割)
    >>>'hello world !'.split()
    ['hello','world','!']
    >>>'hello123world123!'.split('123')
    ['hello','world','!']
    >>>spam='''Dear Alice,
     how are you ?
     I'm fine !
     Thank you!!
     Sincerely
     Bob
     And you ?'''
     >>> spam.split('\n')
     ['Dear Alice,', 'how are you ?', "I'm fine !", 'Thank you!!', 'Sincerely', 'Bob', 'And you ?']
    
  • 使用rjust()、ljust()和center()方法对齐文本
    • rjust()、ljust()字符串方法返回调用它们的字符串的填充版本,通过插入空格来对齐文本(它们的第一个参数是一个整数长度,用于对齐字符串;第二个可选参数将制定一个填充字符,取代空格字符)
    >>>'hello'.ljust(10)
    'hello     '
    >>>'hello'.rjust(10)
    '     hello'
    >>> 'hello'.rjust(10,'*')
    '*****hello'
    >>> 'hello'.ljust(10,'*')
    'hello*****'
    
    • center()字符串方法使文本居中
    >>> 'hello'.center(20)
    '       hello        '
    
  • 使用strip()、rstrip()和lstrip()删除空白字符
    • strip()字符串方法返回删掉原来字符串两边的空白字符(传入可选的字符串参数,指定两边的哪些字符应该删除)
    • rstrip()和lstrip()方法将返回相应地删除了左边或右边的空白字符
    >>> abc='  hello world!  '
    >>> abc.strip()
    'hello world!'
    >>> abc.lstrip()
    'hello world!  '
    >>> abc.rstrip()
    '  hello world!'
    >>> sa='abcdef1234abcdloveabcd'
    >>> sa.strip('abcd')
    'ef1234abcdlove'
    
  • 使用pyperclip模块拷贝粘贴字符串
    copy()可以向计算机的剪切板发送文本即复制文本到剪切板;paste()可以从计算机的剪切板接受文本即从剪切板粘贴文本
>>>import pyperclip
>>>pyperclip.copy('hello world!')
>>>pyperclip.paste()
'hello world!'
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值