一、处理字符串
1、单引号和双引号
Python中单双引号均可以表示字符串,区别在于:
1、双引号中可以使用到单引号
2、单引号字符串中如果要使用单引号,要使用到转义字符
\' \'' \t \n \\
原始字符串
在开始的引号前加r,使字符串成为原始字符串(所有引号、制表符和换行符都将当成字符串的一部分)
print(r"C:\Users\ROG\Desktop\t\n")
三重引号的多行字符串
一个字符串要分行显示时,首先会想到使用\n,现在使用三重引号(开头三个单/双引号,结尾同上),使字符串变成原始字符串,当内容需要换行时直接换行写即可
三重引号写法:
print("""Dear Alice,
Hello world!
Sincerely,
Bob
""")
\n写法:
print("Dear Alice,\n\nHello world!\n\nSincerely, \nBob")
2、注释
#用于单行注释
"""用于多行注释
3、索引和切片
同列表
使用切片操作可以获得子串
4、字符串连接
1)使用+号连接
2)使用%s
3)字符串开头使用f,内部变量用{}括起来
name = "Bob"
age = 10
string1 = "my name is " + name + " and my age is " + str(age)
string2 = "my name is %s and my age is %s" % (name, age)
string3 = f"my name is {name} and my age is {age}"
print(string1)
print(string2)
print(string3)
5、字符串中的方法
upper()、lower()、isupper()、islower()方法
upper():将字符全转换成大写
lower():将字符全转换成小写
isupper():判断字符串中所有字母是否都是大写,返回True/False
islower():判断字符串中所有字母是否都是小写,返回True/False
spam = "ABCDEabcde12345"
print(spam.upper())
print(spam.lower())
print(spam.islower())
print(spam.isupper())
isX()字符串方法
返回布尔值
- isalpha()方法:如果字符串只包含字母且非空,返回True
- isalnum()方法:如果字符串只包含字母和数字,且非空,放回True
- isdecimal()方法:如果字符串只包含数字字符,且非空,返回True
- isspace()方法:如果字符串中包含空格、制表符和换行符,且非空,返回True
- istitle()方法:如果字符串中,只有每一个单词首字母大写,返回True
print("Hello World123".istitle())
print("Hello World123 !?>".istitle())
print("Hello WORLD123".istitle())
startswith()和endswith()
如果调用的字符串以该方法传入的字符串开始或结束,则返回True
print("Hello World!".startswith("Hello"))
print("Hello World!".startswith("Hel"))
print("Hello World!".startswith("hello"))
print("Hello World!".startswith("World"))
join()和split()方法
1)join()方法:
有一个字符串列表,需要将它们连接起来成为一个字符串
spam = ['spam', 'eggs', 'spam', 'eggs']
print(spam)
newspam = ",".join(spam)
print(newspam)
注:join()方法针对一个字符串调用,并且需要传入一个列表值
2) split()方法:
针对一个字符串调用,返回一个字符串列表
spam = "Hello World Hello Everyone"
print(spam.split())
print(spam.split("o"))
partition()方法分割字符串
返回的是元组,其中只有3个元素,分隔符之前的文本、分隔符、分隔符之后的文本。尽在第一次出现处分割字符串。如果找不到,则返回的第一个字符串将是整个字符串,其余两个为空
spam = "Hello World Hello Everyone"
print(spam.partition("Hello"))
print(spam.partition("o"))
print(spam.partition(",,,"))
可使用多重赋值技巧将3个返回的字符串付给3个变量
spam = "Hello World Hello Everyone"
p1,p2,p3 = spam.partition("Hello")
print(p1,p2,p3)
rjust()、ljust()、center()方法对齐文本
用于字符串填充,通过插入空格(默认)或指定字符来对齐文本。r表示右对齐,l表示左对齐
spam = "hello"
print(spam.rjust(10))
print(spam.ljust(10))
print(spam.center(10))
print(spam.rjust(10,"-"))
print(spam.ljust(10,"-"))
print(spam.center(10,"-"))
strip()、rstrip()、lstrip()方法删除空白字符
删除字符串左边、右边或两边的空白字符(空格、制表符和换行符)
strip()删除两边,返回一个新的字符串
rstrip()删除右边,lstrip()删除左边
spam = " hello world "
print(spam.strip())
print(spam.lstrip())
print(spam.rstrip())
方法中也可带有一个可选的字符串参数,指定两边的哪些字符应该删除 ,有就删,否则不执行,参数中不管字符顺序
spam = "####$$$##&&hello world***&&##@@"
print(spam.strip("#"))
print(spam.strip("#$"))
print(spam.strip("$#")) #删除出现的#,$
print(spam.strip("#@")) #删除出现的#,@
ord()和chr()函数
ord()函数用于将字符转变成其ASCⅡ值
chr()函数用于将ASCⅡ值转变成对应字符
print(ord("A"))
print(chr(65))
6、pyperclip模块复制粘贴字符串
使用模块中copy()和paste()函数,向计算机的粘贴板发送文本或从它接受文本