Python入门学习笔记——7.字符串专题

本文主要介绍了Python编程语言中的字符串基础知识,包括创建字符串、字符串操作、字符串格式化以及常见方法的使用,适合初学者入门学习。
摘要由CSDN通过智能技术生成
#########################################################################
#1.转义字符

# \ 续行符

#续行符
# vars = '123' \
#        '456'
# print(vars)

# \ 转义符,在字符出现的特定字符有着特定的意义
# \n  代表一个换行符
# vars = '岁月是把杀猪刀,\n\n但是它拿长得丑的人一点办法都没有。。。'

# \r 代表光标的位置(从\r出现的位置开始作为光标的起点)
# vars = '岁月是把杀猪刀,\r但是它拿长得丑的人一点办法都没有。。。'

# \t 水平制表符(table 缩进)
# vars = '岁月是把杀猪刀,\t但是它拿长得丑的人一点办法都没有。。。'

# \b 退格符
# vars = '岁月是把杀猪刀,\b但是它拿长得丑的人一点办法都没有。。。'

# \\ 一个\是转义符,在这个符号前在定义一个\ 就会取消转义。变成一个普通的\输出
# vars = '岁月是把杀猪刀,\\n但是它拿长得丑的人一点办法都没有。。。'

# 把转义字符作为普通字符输出,在字符串的前面加 r''
vars = r'岁月是把杀猪刀,\b但是它拿长得丑的人一点办法都没有。。。'
print(vars)

#########################################################################
#2.字符串相关操作

# - 字符串 + 操作
vara = '君不见,黄河之水天上来,奔流到海不复回.'
varb = '君不见,高堂明镜悲白发,朝如青丝暮成雪'
# res = vara + varb
res = '将进酒 '+'李白'
# print(res)

# - 字符串 * 操作
# vars = '鸡你太美,' * 5
# print(vars)
# 鸡你太美鸡你太美鸡你太美鸡你太美鸡你太美

# - 字符串 [] 切片操作 ****
# 字符串的索引操作,字符串中只能使用[]下标 访问,不能修改
'''
0 1 2 3 4 5 6 7 8 9 10 ....
君不见,黄河之水天上来,奔流到海不复回
                    -4 -3 -2 -1
'''
vars = '君不见,黄河之水天上来,奔流到海不复回'
# print(vars[5])
# print(vars[-5])

'''
字符串的切片操作
str[开始值:结束值:步进值]
开始值:默认为0,结束值默认是最后一个下标,步进值默认为1
'''
# print(vars)
# print(vars[5]) # 写一个值就是获取指定下标的元素
# print(vars[2:5]) # 从2下标开始取值,一直到下标5之前,能取到2,取不到5
# print(vars[4:8:2]) # 黄河之水 ==> 黄之
# print(vars[::]) # 从头取到尾
# print(vars[::2]) # 从头取到尾,每隔一个取一个
# print(vars[::-1])  # 字符串倒转过来
# print(vars[::-2])  # 字符串倒转过来,每隔一个取一个
# print(vars[1::])  # 不见,黄河之水天上来,奔流到海不复回
# print(vars[1::2])  # 不,河水上,流海复


#########################################################################
#3.format() 格式化字符串  f

# 1 format  普通方式
a = '李白'
# vars = '{}乘舟将欲行,互闻岸上踏歌声'.format(a)
# vars = '{}乘舟将欲行,互闻岸上{}'.format(a,'踏歌声')

# 2 format  通过索引传参                           0   1   2
# vars = '{2}乘舟将欲行,互闻岸上{1}'.format('a','b','c')


# 3 format  关键字传参
# vars = '{a}乘舟将欲行,互闻岸上{b}'.format(a='李白',b='踏歌声')


# 4 format  容器类型数据传参
# vars = '豪放派:{0[0]},婉约派:{0[1]},蛋黄派:{0[2]}'.format(['李白','辛弃疾','达利园'])

data = {'a':'辛弃疾','b':'蛋黄派'}
vars = '{a}乘舟将欲行,互闻岸上{b}'.format(**data)

# 3.7中新增的 格式化方法 f方法
vars = f'{data["a"]}乘舟将欲行,互闻岸上{data["b"]}'
# print(vars)

# 限定小数的位数
# vars = '圆周率是多少:{:.2f}'.format(3.1415926)
# print(vars)



#########################################################################
#4.英文字符与字符检测相关函数

varstr = 'iloveyou'
# 一  大小写转换函数
# str.capitalize() 返回原字符串的副本,其首个字符大写,其余为小写。
res = varstr.capitalize()
# str.title() 返回原字符的副本,把字符串中的每个单词首字母大写
res = varstr.title()
# str.upper()  # 把字符串中的英文字符全部转为 大写
res = varstr.upper()
# str.lower() # 把字符串中的英文字符全部转为 小写
res = res.lower()
# 返回原字符串的副本,其中大写字符转换为小写,反之亦然。
res = varstr.swapcase()

# 二,字符检测方法
# 检测当前的字符串中的英文字符否全部由 大写 字符组成
res = varstr.isupper()
# 检测当前的字符串中的英文字符否全部由 小写 字符组成
res = varstr.islower()
# 检测当前的字符串中的英文单词部分 是否符合 title 标题的 要求
res = varstr.istitle()
#str.isalnum() #检测当前的字符串是否由字符(中文,英文字符,数字)组成
res = varstr.isalnum()
# str.isalpha() # 检测当前的字符串是否由中英文字符组成(不包含数字和其它字符)
res = varstr.isalpha()
# str.isdigit() # 检测当前的字符串是否由数字字符组成
res = varstr.isdigit()
# str.isspace() # 检测当前的字符串是否由空格字符组成
res = varstr.isspace()

# 检测一个字符串是否由指定的字符开头的,也可以指定开始和结束的位置
res = varstr.startswith('l')
res = varstr.startswith('l',1)

# 检测一个字符串是否由指定的字符结尾的,也可以指定开始和结束的位置
res = varstr.endswith('love')
res = varstr.endswith('love',0,5)

print(res)


#########################################################################
#5.字符串查找  重点重点重点重点


vars = 'iloveyoutosimidaandilikeyou'

# 检测一个字符串是否存在与一个字符串中
res = 'loves' in vars
# 获取字符串的长度 len()
res = len(vars)

# (1) 字符串查找相关函数

# 从左向右 获取指定字符在字符串中第一次出现的索引位置,未找到则返回 -1
# str.find(sub[, start[, end]])
# res = vars.find('you')
# res = vars.find('you',10,27)

# 从右向左 获取指定字符在字符串中第一次出现的索引位置,未找到则返回 -1
# res = vars.rfind('you')
# res = vars.rfind('you',0,10)

# str.index() 和find方法一样,只不过如果没有找到则报错 # ValueError: substring not found
# res = vars.index('you')
# str.rindex() 和 rfind方法一样,没有找到则引发异常 # ValueError: substring not found
# res = vars.rindex('you')

# str.count(sub[, start[, end]])# 统计一个字符在字符串中出现的字符
# res = vars.count('you')

# print(res)


#########################################################################
#6.字符串操作相关函数 重点重点重点重点重点

vars = 'user_admin_id_123'

# str.split() 按照指定的字符进行分隔,把一个字符串分隔成一个列表
res = vars.split('_') # ['user', 'admin', 'id', '123']
# vars = 'uid=123&type=ab&kw=hh'
# res = vars.split('&')
# for i in res:
#     r = i.split('=')
#     print(r.pop())

# 可以指定分隔的次数
res = vars.split('_',2)  #['user', 'admin', 'id_123']

# str.rsplit()
# res = vars.rsplit('_') # ['user', 'admin', 'id', '123']
res = vars.rsplit('_',2) # ['user_admin', 'id', '123']


# arr = ['user', 'admin', 'id', '123']
# str.join() 按照指定的字符,把容器类型中的数据链接成一个字符串
# res = '@'.join(arr) # user@admin@id@123

vars = '###这是一个是#文章的标题##'
# 可以去除字符串左右两侧的指定字符
# str.strip()
# res = vars.strip('#')
# print(vars,len(vars))
# print(res,len(res))

# str.lstrip() 去除字符串左侧的指定字符
# str.rstrip() 去除字符串右侧的指定字符


# str.replace() 替换
vars = 'iloveyoutosimidailoveyou'
# res = vars.replace('love','like')
res = vars.replace('love','LOVE',1)


## 了解
vars = 'love'
# res = vars.center(10)
# res = vars.center(12,'*')
res = vars.ljust(10,'*')
res = vars.rjust(10,'*')

# print(res)









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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值