Loading

字符串操作

  • 双引号
 spam = "That is Alice's cat."

字符串可以用双引号开始和结束,就像用单引号一样。使用双引号的好处就是字符串中可以使用单引号字符,如以上操作。

 

  • 转义字符
 spam = "Say hi to Bob\'s mother"
>>> spam
"Say hi to Bob's mother"

常见的转义字符:

转义字符  打印为
\' 单引号
\" 双引号
\t 制表符
\n 换行符
\\ 反斜杠

 

>>> print("Hello there!\nHow are you?\nI\'m doing fine.")
Hello there!
How are you?
I'm doing fine.

 

  • 原始字符串
>>> print(r"That is Carol\'s cat")
That is Carol\'s cat

 

  • 用三重引号的多行字符串
复制代码
 print('''Dear Alice,
... Eve's cat has been arrested for catnapping,cat burglary, and extortion.
... Sincerely,
... Bob''')


Dear Alice,
Eve's cat has been arrested for catnapping,cat burglary, and extortion.
Sincerely,
Bob
复制代码

 

  • 多行注释

井号(#)表示单行注释,但多行字符串常常用多行注释。

 """This is a test Python program.
...    Written by A1 Sweigart al@inventwithpython.com
...    This program was designed for python3.0, not python 2.0
... """

 

  • 字符串下标和切片
复制代码
>>> spam = "hello world!"
>>> spam[0]
'h'
>>> spam[1]
'e'
>>> spam[-1]
'!'
>>> spam[0:5]
'hello'
>>> spam[6:]
'world!'
复制代码

 

  • 字符串的in和not in 操作符
>>> "hello" in "hello world"
True
>>> 'hello' in "Hello"
False
>>> '' in "spam"
True
>>> "cats" not in "cats and dogs"
False

 

  • 常见的字符串方法
  • upper()  lower() isupper() islower()
>>> spam = "Hello world!"
>>> spam = spam.upper()
>>> spam
'HELLO WORLD!'
>>> spam = spam.lower()
>>> spam
'hello world!'

upper()和lower()方法没有改变字符串本身,而是返回一个新字符串。如果希望改变原来的字符串,需要在该字符串上调用该方法,然后将这个新字符串赋值原来字符串变量。

 

复制代码
>>> spam = "Hello world"
>>> spam.islower()
False
>>> spam.isupper()
False
>>> "Hello".isupper()
False
>>> "HELLO WORLD".isupper()
True
>>> "12345".isupper()
False
复制代码

如果字符串至少有一个字母,并且所有字母都是大写或小写,isupper()和islower()方法就会相应地返回布尔值True。否则,返回False。

 

  • isX字符串方法
    • isalpha()返回True,如果字符串只包含字母,并且非空;
    • isalnum()返回True,如果字符串只包含字母和数字,并且非空;
    • isdecimal()返回True,如果字符串只包含数字字符,并且非空;
    • isspace()返回True,如果字符串只包含空格,制表符和换行,并且非空;
    • istitle()返回True,如果字符串仅包含以大写字母开头、后面都是小写字母单词;
复制代码
>>> "hello".isalpha()
True
>>> "hello123".isalpha()
False
>>> "hello123".isalnum()
True
>>> "hello".isalnum()
True
>>> u"this1234".isdecimal()
False
>>> u"123".isdecimal()
True
>>> " ".isspace()
True
>>> "This Is Title Case".istitle()
True
>>> "This Is Title Case 123".istitle()
True
>>> "This is not Title Case".istitle()
False
>>> "This is Not Title Case Either".istitle()
False
>>> 
复制代码

 

  • 字符串方法startswith()和endswith()
复制代码
>>> "Hello world!".startswith("hello")
False
>>> "Hello world!".startswith("Hello")
True
>>> "Hello world!".endswith("world!")
True
>>> 'adb123'.startswith("adbdef")
False
>>> "abc123".endswith("123")
True
复制代码

 

  • 字符串方法join()和split()
复制代码
>>> ",".join(["cat","rats","bats"])
'cat,rats,bats'
>>> " ".join(["cat","rats","bats"])
'cat rats bats'
>>> 'ABC'.join(["my","name","is","Simon"])
'myABCnameABCisABCSimon'


>>> "my name is Simon".split()
['my', 'name', 'is', 'Simon']
>>> "My name is Simon".split('m')
['My na', 'e is Si', 'on']
复制代码

 

  • 用rjust()、ljust()和center()方法对齐文本
复制代码
>>> "Hello".rjust(10)
'     Hello'
>>> "Hello".rjust(20)
'               Hello'
>>> "Hello world".rjust(20)
'         Hello world'
>>> "Hello".ljust(10)
'Hello     '
>>> "Hello".center(20,"*")
'*******Hello********'
>>> 
复制代码

 

  • 用strip()、rstrip()、lstrip()删除空白字符
    复制代码
    >>> spam = " Hello World "
    >>> spam.strip()
    'Hello World'
    >>> spam.lstrip()
    'Hello World '
    >>> spam.rstrip()
    ' Hello World'
    >>> dd = "SpamSpamdsfdsfBaconEggsSpamSpamds"
    >>> dd.strip("pamS")
    'dsfdsfBaconEggsSpamSpamds'
    >>> dd.strip("ds")
    'SpamSpamdsfdsfBaconEggsSpamSpam'
    复制代码

 

  • 用pyperclip模块拷贝粘贴字符串

pyperclip模块有copy()和paste()函数,可以向计算机的剪贴板发送文本,或从它接受文本。将程序的输出发送到剪贴板,使它很容易粘贴到邮件,文字处理程序或者其它软件中。

>>> import pyperclip
>>> pyperclip.copy("Hello world!")
>>> pyperclip.paste()
'Hello world!'

 

作者:solomon-zj

出处:https://www.cnblogs.com/solomon-zj/p/17323933.html

版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。

posted @   solomon-zj  阅读(4)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现
more_horiz
keyboard_arrow_up dark_mode palette
选择主题
点击右上角即可分享
微信分享提示