字符串是Python中最常用的数据类型,通常我们使用引号(单引' 或 双引" 或 三引号""")来创建字符串
在python3中,所有的字符串都是Unicode编码。
对于编程而言,大部分时间都是在做字符的处理,例如字符串连接、切割、转换、格式化等等。
# 用不同的引号来创建字符串:
a = u'我是字符串'    #我是字符串
b = u"我是字符串"    #我还是字符串
c = """我是字符串""" #"""

字符串内置函数:
1.字符连接和切割
join-->以指定的字符串将元组、列表中的所有的元素合并为一个新的字符串。

split-->以指定的分隔符来截取字符串,返回一个list对象
#字符连接和切割
t=('1','2','3','4','5','a','b',"rfg")

#用 - 将t中元素合并成一个新的字符串
str_demo = '-'.join(t)
print(str_demo)
#运行结果:1-2-3-4-5-a-b-rfg

# 将str_demo以-进行切割
str_set=str_demo.split('-')
print(str_set)

#运行结果:['1', '2', '3', '4', '5', 'a', 'b', 'rfg']

# 将t中元素合并成一个新的字符串
str_demo1 = ''.join(t)
print(str_demo1)
#运行结果:12345abrfg

字符串查找和替换--使用函数

find--》find(str, beg=0, end=len(string)),查找str是否包含在字符串中,若指定了beg和end,则在beg和end范围中查找,若找到则返回开始的索引值,否则返回-1

index--》同find方法,不同的是,index若未查找到,抛出一个异常信息,而不是返回-1

rfind--》同find方法,不过rfind是从右边往左边查找

rindex--》同index方法,不过rindex是从右边往左边查找。

repalce--》将字符串中指定的子串替换成目标字符串,如果指定了替换次数,则替换不超过指定的次数

source_str = "it's my book, please show it, wa ka ka, yo yo yo!"
# 从左往右查找yo
print(source_str.find('yo'))
print(source_str.index('yo'))

# 运行结果:40,40

#从右往左查找yo

print(source_str.rfind('yo'))
print(source_str.rindex('yo'))
# 运行结果:46,46
#替换所有的yo
des_str=source_str.replace('yo','ha')
print(des_str)
#运行结果:it's my book, please show it, wa ka ka, ha ha ha!
# 替换两次 yo
des_str1=source_str.replace('yo','ha',2)
print(des_str1)
#运行结果:it's my book, please show it, wa ka ka, ha ha yo!
去字符串前后空格



lstrip--》去除字符串左边的空格
rstrip--》去除字符串右边的空格
strip--》去除字符串左右两边的空格,即把lstrip和rstrip都执行一遍



# 去字符串空格示例
kongge_str=" 我的前 后 和 中 间 都有空格 "
print(kongge_str)

#去掉前面的空格
print(kongge_str.lstrip())

#去掉后面的空格
print(kongge_str.rstrip())

#去掉前后的空格
print(kongge_str.strip())
#去掉字符串中间空格
# (用替换函数把空格替换掉)
zhongjian_str=print(kongge_str.strip().replace(' ',''))
# 运行结果
# 我的前 后 和 中 间 都有空格
# 我的前 后 和 中 间 都有空格
#  我的前 后 和 中 间 都有空格
# 我的前 后 和 中 间 都有空格
# 我的前后和中间都有空格
# 去字符串空格示例
kongge_str=" 我的前 后 和 中 间 都有空格 "
print(kongge_str)

#去掉前面的空格
print(kongge_str.lstrip())

#去掉后面的空格
print(kongge_str.rstrip())

#去掉前后的空格
print(kongge_str.strip())
#去掉字符串中间空格()
# (用替换函数把空格替换掉)
zhongjian_str=print(kongge_str.strip().replace(' ',''))
# 运行结果
# 我的前 后 和 中 间 都有空格
# 我的前 后 和 中 间 都有空格
#  我的前 后 和 中 间 都有空格
# 我的前 后 和 中 间 都有空格
# 我的前后和中间都有空格
判断字符串类型

isalnum--》判断字符串是否由字母或数字组成,是则返回true,否则为false

isalpha--》判断字符串是否都是字母,是则返回true,否则为false

isdigit--》判断字符串是否都是数字,是则返回true,否则为false

islower--》判断字符串是否都是小写,是则返回true,否则为false

isnumeric--》判断字符串是否都是数字,是则返回true,否则为false

isspace--》判断字符串是否都是空格,是则返回true,否则为false

isupper--》判断字符串是否都是大写,是则返回true,否则为false

str1 = "1234567890"
str2 = "abcdefABCDEF"
str3 = "12345abcdeABCDE"
str4 = "abcdef"
str5 = "ABCDEF"
str6 = "    "
str7 = ' sfsdf '
# isalnum
print(str3.isalnum())

# isalpha
print(str2.isalpha())

# isdigit
print(str1.isdigit())

# isnumeric
print(str1.isnumeric())

# islower
print(str4.islower())
print(str5.islower())
print(str2.islower())

# isupper
print(str4.islower())
print(str5.islower())
print(str2.isupper())

# isspace
print(str6.isspace())
print(str7.isspace())
运行结果:

True
True
True
True
True
False
False
True
False
False
True
False



https://zhidao.baidu.com/question/496610701775817084.html(isdigit()和isnumeric()的区别