python中空格字符怎么表示_Python中字符串有哪些常用操作?纯干货超详细

5455730484bd351084e2e79b9d52d4c0.png

在Python中字符串的表达方式有四种

  • 一对单引号
  • 一对双引号
  • 一对三个单引号
  • 一对三个双引号

这里多说一句,小编是一名python开发工程师,这里有我自己整理的一套最新的python系统学习教程,包括从基础的python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等。想要这些资料的可以关注小编,并在后台私信小编:“01”即可领取。

a = 'abc'b= "abc"c = '''abc'''d = """abc"""print(type(a)) # print(type(b)) # print(type(c)) # print(type(d)) # 复制代码

单双引号混合使用

a = "LiMing say 'nice to meet you'"复制代码

同样也可以通过转义的方式不用在里面写双引号

a = "LiMing say "nice to meet you""print(a)复制代码

总结就是需要外面用了双引号,里面需要引用的语句可以用单引号括起来,反之亦然。

通常情况根据个人喜好,基本都是使用单引号或者双引号。有些特殊情况,比如需要表示多行时,可以选择三个单(双)引号,并且无序用进行转移,可直接使用单引号和双引号。

a = '''    My Name is 阿喵,    Let's say 'Hello'    '''print(a)复制代码

字符串的下标和切换

fa3d3fcb2bc76ce4d6f8b7a61d0deb6d.png

下标:字符串是一个个字符拼接而成,下标可以理解为每个字符的编号,从0开始依次类推。

作用:通过下标去操作字符串中的元素

# H的下标为0, e的下标为1 ..依次类推a = 'HelloWorld'# 获取字符串a中下标为4的元素print(a[4])  # o  下标为4的元素为o复制代码

修改字符串中的元素是不是可以直接赋值呢? 例如:

a = 'HelloWorld'a[4] = 'k'print(a)复制代码

上面的代码运行之后发现报错。

TypeError: 'str' object does not support item assignment复制代码

原因是因为: 字符串一旦创建之后,里面的元素是不可以修改的。

所以字符串是无法直接进行修改的。

字符串运算

字符串运算中用到了+ 、*、>、

字符串的相加操作,也可以理解为拼接操作。例如:

a = 'Hello' + ' World'print(a) # Hello World# 也可以写成a = 'Hello' ' World'print(a) # Hello World复制代码

字符串的乘法操作, 可以理解为克隆操作,字符串只能与整数(n)想乘,代表克隆n个字符串。

a = 'a'print(a * 2) # aab = '-'print(b * 10) # ----------复制代码

切片

字符串的切片也称为字符串截取。 所有操作都是通过字符串的下标进行操作的。

用法:字符串[开始索引(start):结束索引(end):步长(step)(默认1)]

步长(step):每隔(step-1)个取一个元素,当step为负数时,代表从右向左取元素,

a = 'abcdefghijklmn'# 从下标1开始 到4结束 进行切片  (包括1,不包括4,即左开又闭)print(a[1:4]) # bcdprint(a[1:8]) # bcdefghprint(a[1:8:2])# 步长为2, 结果:bdfh# 当补偿为负数时,代表逆向截取。 初始从坐标8开始,每隔一个元素取一个值,到下标为1时结束print(a[8:1:-2]) # igec复制代码

字符串的常用操作

这里以代码+注释的方式,展示几个常用的字符串操作。

a = ' Hello World '# 获取字符串的长度print(len(a)) # 13# 删除字符串两边的空格print(a.strip()) # Hello World# 删除左边的空格print(a.lstrip()) # Hello World (只删除左边的空格)# 删除字符串右边的空格print(a.rstrip()) #  Hello World# 通过指定连接符 链接字符串lst = ['LiMing', 'Tom']print('***'.join(lst)) # LiMing***Tom# 首字母大写m = 'hello world'print(m.capitalize()) # Hello world# 返回标题化字符串,即每个单词首字母大写print(m.title()) # Hello World# 打印输出字符,将字符串放在中间,# center(width, fillchar)   width: 字符串的总长度, fillchar:填充字符print(a.center(20, '*')) # *** Hello World ****# 是否以xxx开头n = 'Hello'print(n.startswith('H')) # True# 是否以xxx结尾print(n.endswith('o')) # True# 字符串是全纯英文字符print(a.isalpha()) # False , 因为字符串a中 ' Hello World ' 有空格,因此返回Falseprint('HelloWorld'.isalpha()) #True# 判断字符串中是否全部为数字或者英文print('Hello2World'.isalnum()) # Trueprint('123'.isalnum()) # Trueprint('abc&11'.isalnum()) # False# 判断是否为整数print('123'.isdigit()) # Trueprint('1.23'.isdigit()) # False# 判断字符是否全为小写print('abc'.islower()) # True# 判断字符是否全为大写print('Abc'.isupper()) # Falseprint('ABC'.isupper()) # True# 字符串小写转大写print('abc'.upper()) # ABC# 字符串大写转小写print('ABC'.lower()) # abc# 字符串的替换b = 'aabbcc'.replace('a', 'm')print(b) # mmbbcc#  1 代表替换的个数b = 'aabbcc'.replace('a', 'm', 1)print(b) # mabbcc# split 字符串切割,默认空格切割print('aa bb cc'.split()) # ['aa', 'bb', 'cc']print('ab,cd,ef'.split(',')) # ['ab', 'cd', 'ef']# 字符串换行分割a = """    My Name is 'Python阿喵',    欢迎关注    """print(a.splitlines()) # ['', "    My Name is 'Python阿喵',", '    欢迎关注', '    ']复制代码

字符串的查找

字符串查找常用的方法用index、find

两者功能相似,区别在于find查找不到元素时返回 -1, 不会影响程序运行,而index则会抛出异常。

a = 'abcdef'# 查找到元素返回对应的下标print(a.find('c')) # 2print(a.find('h')) # -1print(a.index('c')) # 2print(a.index('h')) # 抛出异常,ValueError: substring not found复制代码

rfind: 类似于find()函数,不过是从右边开始查找;返回字符串最后一次出现的位置,如果没有匹配项则返回-1 。rindex 同理

a = 'acmncd'# 从右边开始计算,返回第一个匹配到的下标print(a.rfind('c')) # 4print(a.rindex('c')) # 4复制代码

字符串的格式化

name = 'Python阿喵'# %s 用于输出字符串print('我的账号是: %s' % name)age = 18# %d 用于输出十进制数字print('我的年龄是:%d' % age)money = 1.23# %f 浮点数,默认显示小数点后6位print('我身上有:%f 元' % money )# 指定小数点后的位数print('我身上有:%.2f 元' % money )复制代码

format操作

15c314ac9ebce3b5c4133ee1adcbcc20.png

除了使用 % 进行格式化,也可以使用format

print('{} {}'.format('Hello', 'World')) # Hello Worldprint('{0} {1}'.format('Hello', 'World')) # Hello Worldprint('账号{name}, 分享{code} 技术'.format(name='Python阿喵', code='Python')) # 账号Python阿喵, 分享Python 技术print('{1}, {0}, {1}'.format('A', 'B')) #B, A, Bprint('今年是 {}年.'.format(2020)) # 今年是 2020年.复制代码

最后多说一句,小编是一名python开发工程师,这里有我自己整理的一套最新的python系统学习教程,包括从基础的python脚本到web开发、爬虫、数据分析、数据可视化、机器学习等。想要这些资料的可以关注小编,并在后台私信小编:“01”即可领取。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值