字符串
- str
- 表示文字信息
- 用单引号,双引号,三引号括起来
三引号的特点是可以存储多行信息,并保留格式
a= '''
i
asd
asd
'''
print(a)
i
asd
asd
转义字符
- 用反斜杠来转义
- windows中 \n 换行 ; linux中 \r\n : 换行
a='wo'
b='ai'
print(a+b)
woai
a= "let's go"
b= 'let\' go'
print(a,b)
# print(a,\nb) 错误
File "<ipython-input-12-ec162cdbe208>", line 4
print(a\n,b)
^
SyntaxError: unexpected character after line continuation character
- 想要表示 \ ,则需要用 \ \ 反斜杠来转移反斜杠
a = 'abc\ndef\nghijk'
print(a)
abc
def
ghijk
常用的转义字符
\ 续行,表示格式太长,可以用来换行继续写
# 续行
for b in\
range(1,10):
print(b,end=' ')
1 2 3 4 5 6 7 8 9
格式化
- 把字符串按照一定格式进行打印或者填充
不变的固定,变的地方用变量填充 - 填充方式
- 传统格式化,用 % 占位符 占一个位置
但是格式有规定
%s:表示字符串占位
%f:表示浮点占位
%.2f 表示小数点保留后两位
- 传统格式化,用 % 占位符 占一个位置
同理在python中保留小数点
比如format中,“aaa {:.2f} asd”
在里面加上冒号,表示对里面的要求,然后加上 数字+f
- format 没有规定必须是什么格式
但是:字符串需要加上引号
- format时使用{}来占位的,那如果想表示{}
s = "format是使用{}来占位的"
print(s)
format是使用{}来占位的
a = “I love %s”
print(a)
print(a%“XXX”)
I love %s
I love XXX
b = 'XXX'
a = "I love %s" #单引号和双引号的字符串可以公用
print(a%b)#把这个式子展开就变为↓
print("I love %s"%'XXX')
# 和format有点像
print("I love {}".format(100))
# 将上面的写为多行
a = "I love {}"
b = input()
print(a.format(b))
I love XXX
I love XXX
I love 100
XSA
I love XSA
a = "{} {} !"
b = input()
c = input()
a = a.format(b,c)
print(a)
# print("{} {} !".format(b,c))
a
s
a s !
s = "{2}{1}{0}"
print(s.format("a","b","c"))#format里面的需要时字符串,字符串需要加上引号
cba
命名参数
s = "a is {aa} , b is {bb} , c is {cc}"
print(s.format(aa="a",bb="b",cc="c"))
a is a , b is b , c is c
字典
- 需要在前面加上** , 将字典解包
- 字典格式{“”:“”,“”:“”}
a_dict= {"a":"aa","b":"bb","c":"cc"}
s = "a is {a},b is {b},c is {c}"
print(a_dict)
print(s.format(**a_dict))
{'a': 'aa', 'b': 'bb', 'c': 'cc'}
a is aa,b is bb,c is cc
str 内置函数
- 在python中用str来表示字符串
- 有很多内置函数
查找类 find,index
- find用法:是返回的结果是查找的字符第一次出现的位置,后面的不管,如果找不到则返回-1
- 还可从想要的区间开始查找
- rfind和lfind,从右开始查找,从左开始查找
- index和find差不多,区别在于index查不到字符会报错,引发异常
判断类 islower,isalpha
- isalpha,判断字符串是否是字母,不能区分中英文
- 判断是否全部是字母
- 空格和逗号都不是
- S.isalpha() ,并返回结果(bool)
- islower 判断是否全是小写的
- 可以help(str。islower)
- 空格不影响
- 汉字不是小写
- 汉字也不是大写
- “阿瑟东”。isuper()
内容判断
- startswith/endswith
- 检查字符串是否为XXX开头或者结尾
- ”asdasdzxcqwe“。startswith(”asd”)
- 返回结果(bool)
- 同理可以知道,start,end
- “asdqweasd”。start(“qwe”)
操作类
- format
- strip:删除字符串两边的空格或者字符,如果在后面逗号加上字符串,那么就会删掉想要的字符串
- 不返回值
- 只会从两边开始删除,并且山字符串空格不会删掉
- rstrip,lstrip,删掉右边的,删掉左边的
- join:将两个字符串进行拼接,主要是以逗号为唤起点
- print(“a”。join(“as,阿瑟东,请问,q”))
- 结果是“a”将后面的字符串中,逗号左右都加上一个“a”
- 如果是对列表进行,则是将列表中的逗号进行替换
s = "asdasdasdqasdasdqwe"
s1 = "q"
# s.find(s1)
# s.find(s1,10) #表示从10的位置开始查找
s.rfind(s1) # 从右边开始查找,查处的结果是正序的位置
16
# strip
a = "asdhho qweoi kjh "
print(a)#看不出来
print(a.strip())
print(a,end='---')
print()
print(a.strip(),end="---")
print()
print(a.strip("asd"),end="---")
asdhho qweoi kjh
asdhho qweoi kjh
asdhho qweoi kjh ---
asdhho qweoi kjh---
hho qweoi kjh ---
print("a".join("a,d,f,q,q"))
print("a".join(["a","d","f","q","q"]))
aa,ada,afa,aqa,aq
aadafaqaq
TXnsee
发布了21 篇原创文章 · 获赞 0 · 访问量 694
私信
关注