-用来表示一串文字信息
-表示:单引号,双引号,三引号(三单引号或三双引号,能够括起多行信息)
-单双引号交错使用
a = 'hello world'
print(a)
#用引号表示
''
-str1+str2+str3
a = 'hello '
b = 'world'
c = a + b
print(c) # 'hello world'
a="".join("sdfa")
print(a) #`sdfa`
a="ew"
b=a.join("1234")
print(b) #`1ew2ew3ew4`
-把字符串按照一定格式打印或者填充
-格式化有两种表示方法
-利用百分号(%)
-利用format函数
-在字符串中,利用%表示一个特殊的含义,表示对字符进行格式化
-%d:此处应该放一个整数
-%s:此处应该放一个字符串
-%f:此处应该放一个浮点数
print("i love %s"%"u") #'i love u'
a = "i love %s"
print(a%"u") #'i love u'
#"%s %s"%(str1,str2)
#%s是占位符
a="hi"
b="girl"
c="%s %s"%(a,b)
d="%s,%s"%(a,b)
print(c) #'hi girl'
print(d) #'hi,girl'
-直接用format函数进行格式化
-推荐使用这种方法
-在使用上,用{}代替%,后面用format带参数完成
-"{}{}{}".format(obj1,obj2,obj3)
b="come"
c="on"
d="baby"
a="{} {} {}".format(b,c,d)
print(a) `comeonbaby`
a1="{1} {2} {0}".format(d,b,c)
print(a1) #`come on baby`
a2="{n0} {n1} {n2}".format(n0=b,n1=c,n2=d)
print(a2) #`come on baby`
-strip()是清除字符串首尾指定的字符或字符序列,默认是清除字符串两侧的空格或换行符
-lstrip()是清除字符串左侧的空格
-rstrip()是清除字符串右侧的空格
a=" hi girl!! "
b=a.strip()
print(b) #`hi girl!!`
c=a.lstrip()
print(c) #`hi girl!! `
d=a.rstrip()
print(d) #` hi girl!!`
e=a.strip(!)
print(e) #` hi girl `
-把字符串中的字符或字符串替换新的字符或字符串,如果指定第三个参数max,则替换从左至右不超过max次
a="hi girl"
b=a.replace("hi","hello")
print(b) #`hello girl`
c=a.replace("i","a")
print(c) #`ha garl`
-将字符串的小写字母全部改成大写字母,只能改字母,不能改数字
a="sdfgSfs"
b=a.upper()
print(b) #`SDFGSFS`
-将字符串的大写字母全部改成小写字母,只能改字母,不能改数字
a="sfSFDgsdf"
b=a.lower()
print(b) #`sfsfdgsdf
-字符串首字母改成大写
a="hello girl"
b=a.capitalize()
print(b) #`Hello girl`
-将字符串标题化,即单词首字母大写,其余字母小写
a="hi GIRL"
b=a.title()
print(b) #`Hi Girl`
-与列表方法相同,统计元素在str出现几次
a="sdfgwfsdf"
b=a.count("s")
print(b) #2
-查找元素索引,没查到返回-1,查到返回元素索引位置
a="sdfgsdfwsf"
b=a.find("f")
c=a.find("n")
print(b) #2
print(c) #-1
-查看字符串类型
a="234"
type(a)=str
-查看字符串是否是数字
a = "hello world"
b = a.isdigit()
print(b) #false
-查看字符串是否是字母
a = "hello world"
b = "helloworld"
c = a.isalpha()
d = b.isalpha()
print(a) #false 因为中间有空格
print(b) #true
-判断字符串是否以...为开头
a = "sdfsdesf"
b = a.startswith("sdf")
print(b) #true
-判断字符串是否以...为结尾
a = "sdfsdesf"
b = a.startswith("f")
print(b) #true
-判断字符串是否全是大写字母
a = "DFfgd"
b = a.isupper
print(b) #false
-判断字符串是否全是小写字母
a = "DFfgd"
b = a.islower
print(b) #false
str = "hahaha xixixi\nhehehe heiheihei"
print(str.split()) #以空格为分隔符,包括\n
#['hahaha', 'xixixi', 'hehehe', 'heiheihei']
print(str.split(' ',1)) #以空格为分隔符,分割一次
#['hahaha', 'xixixi\nhehehe heiheihei']
print(str.split(' ',2)[-1]) #分割两次,取分割后的最后一个字符串
#heiheihei
-用一个特殊的方法表示出一系列不方便写出的内容,比如回车键,换行键,退格键
-借助反斜杠字符,一旦字符串中出现反斜杠,则反斜杠后面一个或多个字符表示已经不是原来的意思了,进行了转义
-\\ 反斜杠
-\` 单引号
-\" 双引号
-\ 续航符
如:a = "lov\
e"
print(a) #love
-\a 响铃,发出声音
-\b 退格(backspace)
-\e 转义
-\000 空
-\v 纵向制表符
-\t 横向制表符
-\r 回车
-\f 换页
-\oyy 八进制数,yy代表的字符
-\xyy 十进制数,yy代表的字符
-\other 其他的字符,以普通格式输出
-有时不想让字符串转义,只想显示字符串原本的意思,用R或r
a = "r`\t\r`"
print(a) #`\t\r`
-表示什么都没有
-如果函数没有返回值,可以返回None
-用来占位置
# 字符串转字节
a = '小哥最帅'
b = a.encode('utf8') #utf-8 亦可
b1 = bytes(a, encoding='utf-8')
#字节转字符串
c = b'\xe5\xb0\x8f\xe5\x93\xa5\xe6\x9c\x80\xe5\xb8\x85'
d = c.decode('utf-8') #utf8 亦可
e = b'xiaogezuishuai'
print(b)
print(b1)
print(d)
print(e[2])
print(e[2:5])
#b'\xe5\xb0\x8f\xe5\x93\xa5\xe6\x9c\x80\xe5\xb8\x85'
b'\xe5\xb0\x8f\xe5\x93\xa5\xe6\x9c\x80\xe5\xb8\x85'
小哥最帅
97 #这里的 97 是 a 的 ascii 值
b'aog'