1、python3中的字符串可以使用引号(’或”)开创建。

a = "hello World!”
  print(type(a))
    结果:<class 'str'>

2、python没有C语言等其他语言中“char”类型,哪怕只有一个字符,python也按照字符串处理。python访问子字符串,可以使用方括号截取字符串。

a[0]  ----> "h"
  a[1:5]  ----> "hell"

  当在中括号中包含两个参数时,表示从第一个参数开始,并包含这个字符,到第二个参数结束,但不包含这个字符。

3、字符串拼接:直接用 + 符号;

b = “你好!世界!”
  c = a + b
  print(c)  ------>"hello World!你好!世界!"

4、python中的转义字符

  在字符中使用特殊字符时,python用反斜杠(\)转义字符。

\(在行尾时)     续行符
\\         反斜杠符号
\'         单引号
\"         双引号
\a         响铃
\b         退格(Backspace)
\e         转义
\000         空
\n         换行
\v         纵向制表符
\t         横向制表符
\r         回车
\f         换页
\oyy         八进制数,yy代表的字符,例如:\o12代表换行
\xyy         十六进制数,yy代表的字符,例如:\x0a代表换行
\other     其它的字符以普通格式输出

5、其他字符串处理方式:

*        重复输出字符串
in        成员运算符 - 如果字符串中包含给定的字符返回 True
not in     成员运算符 - 如果字符串中不包含给定的字符返回 True
r/R        原始字符串 - 原始字符串:所有的字符串都是直接按照字面的意思来使用,没有转义特殊或不能打印的字符。 
    原始字符串除在字符串的第一个引号前加上字母 r(可以大小写)以外,与普通字符串有着几乎完全相同的语法。

6、python字符串格式化

# 在创建字符串时,可以在字符串中指定占位符
# %s 在字符串中表示任意字符
# %f 浮点数占位符
# %d 整数占位符
a = "cloos"
b = 'Hello %s'%'cloos'
b = 'hello %s 你好 %s'%('tom','cloos')
b = 'hello %3.5s'%'abcdefg' # %3.5s字符串的长度限制在3-5之间
b = 'hello %s'%123.456
b = 'hello %.2f'%123.456
b = 'hello %d'%123.95

# print('a = %s'%a)

# 格式化字符串,可以通过在字符串前添加一个f来创建一个格式化字符串
# 在格式化字符串中可以直接嵌入变量
c = f'hello {a} {b}'

 PS:python字符串格式化符号:

%c     格式化字符及其ASCII码
%s     格式化字符串
%d     格式化整数
%u     格式化无符号整型
%o     格式化无符号八进制数
%x     格式化无符号十六进制数
%X     格式化无符号十六进制数(大写)
%f     格式化浮点数字,可指定小数点后的精度
%e     用科学计数法格式化浮点数
%E     作用同%e,用科学计数法格式化浮点数
%g     %f和%e的简写
%G     %f 和 %E 的简写
%p     用十六进制数格式化变量的地址

6、python三引号:

三引号的作用除了多行注释外,还可以允许一个字符串跨多行。

7、python字符串的一些方法:

name = cloos
#求字符串长度
print(len(name))

#首字母大写
print(name.capitalize())

#统计字符出现次数
print(name.count('o'))

#居中显示,不够用’-‘补齐
print(name.center(50,'-'))

#判断字符串以什么结尾
print(name.endswith('s'))

#把字符串中的tab表示多少个空格
print(name.expandtabs(tabsize=30))

#去字符串的索引值
print(name.find('o'))

#字符串切片
print(name[name.find("o"):])

#替换
print(name.format(names = 'nihao',year = 23))

#字符串中是阿拉伯数字
print("ab12".isalnum())

#判断是否是纯英文字符
print("abA".isalpha())

#判断是不是十进制
print("1F".isdecimal())

#判断是不是整数
print("12".isdigit())

#判断是不是标准的标识符
print("a fi".isidentifier())

#判断是不是只有数字
print("33A".isnumeric())

#判断是不是标题(判断每个单词的字母是不是大写
print("my Name Is".istitle())

#是否能打印的文件,tty file
print("my Name Is".isprintable())

#是不是大写
print("my Name Is".isupper())

#合并列表为字符串,第一份参数存放分割符
print(",".join(['1','2']))
print(type(",".join(['1','2'])))

#格式输出,字符不够用*补充
print(name.ljust(50,"*"))
print(name.rjust(50,"*"))

#转换为小写
print("Cloos".lower())

#转换为大写
print("Cloos".upper())

#去掉左边换行或空格
print("\n Cloos \n".lstrip())

#去掉右边换行或空格
print("\n Cloos \n".rstrip())

#去掉两边换行或空格
print("\n Cloos \n".strip())

#把上上中的字母转换为对应的数字,可用于加密
p = str.maketrans("abcdefg","1234567")
print("cloos".translate(p))

#替换,第三个参数为替换个数
print("cloos".replace("o",'O'))
print("cloos".replace("o",'O',1))
#替换空格
print("cloos xie".replace(' ',''))

#找到最右边一个字符的下标
print("cloos".rfind('o'))

#按照设定字符拆分字符串为列表,默认为空格
print("cloos is good".split())
print("cloos is good".split('o'))

#暗转换行拆分
print("cloos is\n good".splitlines())

#大写变小写
print("clOOs".swapcase())
 
#转换为标题(单词首字母大写)
print("cloos am".title())