字符串声明
双引号,单引号,三单引号,三双引号
里面有双引号,外面使用单引号
里面有单引号,外面使用双引号
或者使用转义字符
#字符串
m='hello'
n="hello"
#里面有双引号,外面使用单引号
a='"hello"'
#里面有单引号,外面使用双引号
b="I'm dq"
c='''hello'''
d="""hello"""
i='''I say:"ok"'''
j="""I'dq"""
print(a,b,c,d,i,j,sep='\n')
注意:不能字符串+数字,会报错,必须两者都是字符串
#报错TypeError: can only concatenate str (not "int") to str
print("3243"+3)
print("3243" + 3+"2343")
规定:
两个字符串类型的数据使用加法运算符,用来拼接两个字符串。在Python里数字和字符串不能做加法运算。
数字和字符串之间使用乘法运算符,用于将字符串重复多次。
字符串之间使用比较运算符,会根据各个字符的编码值逐一进行比较。
数字和字符串之间,做 == 运算的结果是 False,做 != 运算的结果是 True,其它的比较运算均不支持,否则会报错。
易错题:
#2
print(‘127’+‘124’)
#真实情况下输出127124,但答题的时候加上‘’
1)
2)
3)
转义字符
\n换行
\t水平制表符
\斜杠
\r是回车,光标到行首
\v:垂直制表
如:
aaaa水平
a
a
a
a垂直
tab默认四个空格
#字符串2-转义字符
m='he\'ll\'o'
n="he\"ll\"o"
print(m,n,sep='\n')
格式化打印字符串
格式化打印字符串有两种方式:
1.可以使用 % 占位符来表示格式化一个字符串。
%s == > 字符串占位符。
%d == > 整数占位符。
%nd == > 打印时显示 n 位,如果不够,在前面使用空格补齐。
%f == > 浮点数占位符。
%. nf == > 保留小数点后 n 位。
%x == > 将数字使用十六进制输出。
%% == > 输出一个 % 。
2.format()方式
字符串下标
1.字符串下标
0–n-1
-n-(-1)
2.字符串一旦定义不能发生变化
x=‘89’
x[0]=‘3’(错误)
x=‘2345’(指向一个新的字符串)
3.字符串切片
字符串名称[start :end :step]
【start,end)
step默认为1,从左往右取
如果只设置start,会“截取”到最后。
如果只设置end,会从头开始“截取”到end前一个字符。
这三个都可以缺省,即取出所有的
正向:
#字符串3-切片1
x='1234567'
#[start:end)从0开始-12
print(x[0:2:1],sep='\n')
#[start:end)从0开始-1234567
print(x[0:7:1],sep='\n')
#全部缺省,取出所有的-1234567
print(x[::],sep='\n')
#取出[1,3)--123
print(x[:3:],sep='\n')
#隔2个取--1357
print(x[0::2],sep='\n')
逆向:
step=-1从右往左取
#字符串3-切片2
x='1234567'
#(-n)--(-1):这里-7--(-1)
#step=1从左向右--34
print(x[-5:-3:1],sep='\n')
#step=-1从右到左,7654
print(x[-1:-5:-1],sep='\n')
#从第-2到第-5,从右往左,每隔两个字符做1次切片,输出64
print(x[-2:-5:-2])
##从右往左每隔3个字符做1次切片,输出741
print(x[::-3],sep='\n')
易错题:
只有单个数字【n】,是取出单个字符
#3
s="abcdef"
#【-6,-1】
#【0,5】
print(s[3],s[-3],s[0:-3],s[:-3],sep='\n')
#输出
# d
# d--(-3)从右到左第三个-1,-2,-3
# abc--【0,-3)从头开始,到第三个字符-6,-5,-4
# abc--从头开始,到第三个字符
#4
s=