字符串的魔法
num= "The Music"
v1=num.upper()#将字符串全部变为大写
v2=num.capitalize()#将字符串的首字母大写
v3=num.center(20,"=")#总长度为20个字符,空白位置用等号填充,居中
v4=num.casefold()#将所有大写变为小写,可将多种类型的变为小写
v5=num.lower()#将所有大写变为小写,局限于英文字母
v6 =num.count('si')#寻找子序列出现的次数
v7 =num.count('ex',5,8)# 寻找子序列出现在第5—8字符之间的次数
v8 =num.endswith('ic')#判断字符串是否以“ic”结尾
v9 =num.startswith('Th') #判断字符串是否以“Th”开始
v10=num.find('us')# 从开始往后找,找到第一个之后,获取其位置,未找到为-1
v11 =num.index('us') #从开始往后找,找到第一个之后,获取其位置,未找到为error
v12 =num.isalnum()# 字符串中是否只包含 字母和数字
print(v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11,v12)
# 格式化,将一个字符串中的占位符替换为指定的值
Test = 'i am {0}, age {1}'
Test1='i am {name}, age {a}'
v1 = Test .format('alex',19)
v2 =Test1.format(name='alex',a=19)
v3 = Test1.format_map({"name": 'alex',"a": 19})
print(v1,v2,v3)
# test="username\temail\tpassword\nxiaofang\txiaofang@qq.com\t123456\nxiaofang\txiaofang@qq.com\t123456\nxiaofang\txiaofang@qq.com\t123456\n"
# v =test.expandtabs(20)#制表,每一个单元格占20个字符
#print(v,len(v))
# test= "TheMusic周"
# v =test.isalpha()#判断字符串中是否只有字母和汉字
#print(v)
# test= "1234"
# v1 =test.isdecimal()#判断是否是数字,限于阿拉伯数字,最常用
# v2 =test.isdigit()#判断是否是数字,可以判断很多种,不能判断中文
# v4 =test.isnumeric()#在V2的基础上,可以判断中文数字
# v3 =test.isidentifier()#判断是否是标识符,标识符由字母,数字,下划线组成,数字不能起头
#print(v1,v2,v3)
# test= "The music"
# v1 =test.title()#把不是标题的英文转换为标题格式
# v2 =test.istitle()#判断一串字符是不是标题格式
# v3 =' '.join(test)#重点,给字符串中间加空格,加其他东西也可以
# v4 =test.ljust(20,'=')#在字符串放在左边,右边全填等号,一共20字符位置
# v5 =test.rjust(20,'=')#在字符串放在右边,左边全填等号,一共20字符位置
# v6 =test.istitle()#判断字符串是否都是小写
# v7 =test.isupper()#判断字符串是否都是大写
#print(test,v1,v2,v3,v4,v5,v6,v7)
# test= "\n\t The music "
# v1 =test.lstrip()#去掉左边的空格,换行,等等
# v2 =test.rstrip()#去掉右边的空格,换行,等等
# v3 =test.strip()#去掉左右两边的空格,换行,等等
#print(v1,v2,v3)
#也可以去掉指定的内容例如:
# test= "The music"
# v1 =test.lstrip('Th')
# v2 =test.rstrip('ic')
# v3 =test.strip('c')
#print(v1,v2,v3)
#先把某一部分需要替换的,做一个对应关系,然后再进行替换
# test= "沽酒人来风亦醉,卖花女去路还香"
# m =test.maketrans("沽酒人","抠脚汉")
# v =test.translate(m)
#print(v)
#以后会学到正则表达式*
# test= "aaaaaaabccccccccbdddddddddbjjjjjjjjjj\njjjj"
#v1 = test.partition('b')#以左边第一个b为参考,把字符串分为三份
#v2 = test.rpartition('b')#以右边第一个b为参考,把字符串分为三份
#v3 = test.split('b')#以b为参考,把字符串分为n(b)+1份
#v4 = test.split('b',1)#以b为参考,把字符串分为二份
# v5 = test.rsplit('b')#以b为参考,从右边开始把字符串分为n(b)+1份
#v6 = test.splitlines(False)#只能以换行符为参考,把字符串分段
#v7 = test.startswith("aa")#判断字符串开始的部分
#v8 = test.endswith("jj")#判断字符串结束的部分
#v9 = test.swapcase()#大小写互换
#v10 = test.replace("b",'X')#把字符串中的b都替换为X
#v11 = test.replace('b','X',2)#把字符串中的前两个b都替换为X
#print(v1,v2,v3,v4,v5,v6,v7,v8,v9,v10,v11)
#==========================七个基本应用=================================
# join
#split
# find
#strip
#upper
#lower
#replace
#=======================四个灰魔法应用===================================
#1、索引
# test= "The Music"
#v1 = test[2]#取出字符串中的某一个数
#print(v1)
#2、计算字符串长度
# test= "The Music"
#v1 = len(test)#计算字符串长度,当对象是列表的时候,计算的是列表有多少个元素
#print(v1)
#3、循环for
# flag= 0
# test= "沽酒人来风亦醉"
#while flag < len(test):
# v = test[flag]
# flag+=1
# print(v)
#print("=============")
# 效果与下程序相同
# test= "沽酒人来风亦醉"
# forflag in test:
# print(flag)
#print("============")
#4、分割
# test= "The Music"
#v2 = test[1:5]#将字符串中的1=<X<5的部分取出来
#v3 = test[1:-1]#可以是负数
#print(v1,v2,v3)
#range
# test= range(0,100)#取一个范围内的值 range(start,end,步长)
# forflag in test:
# print(flag)
#显示输入的字符,并在前面显示其标号
# test= input(">>>>")
# for flag in range(0,len(test)):
# print(flag,test[flag])
#===========================================================================
# 字符串一旦创建,不可修改,一旦修改或拼接,在内存中,都会生成新的字符串