Python 字符串操作

以下这些都是字符串

a = '''Tom'''
print(a)
print(type(a))

b = """Rose"""
print(b)
print(type(b))
#三引号支持换行输出
c = '''I am Tom,
nice to meet you'''
print(c)
print(type(c))

d = 'i am' \
    ' Tom'
print(d)
print(type(d))

二.字符串查找

mystr = "hello python and it cast and come on China!"
#1. find() : 检测某个子串是否包含在这个字符串中,如果在,返回这个子串开始的位置下标,如果不在,则返回-1
#语法:字符串序列.find(子串,开始位置下标,结束位置下标)
#注意:开始和结束位置下标可以不写,表示查找整个字符串
#print(mystr.find('and')) #输出 13
#print(mystr.find('and', 15, 30)) #输出 25
#print(mystr.find('ands')) #输出-1,不存在

#2.index() : 检测某个子串是否包含在这个子串中,如果在,返回这个子串开始的位置下标,否则则报异常
#print(mystr.index('and')) #输出 13
#print(mystr.index('and', 15, 30)) #输出 25
#print(mystr.index('ands')) #报错 如果index查找的字串不存在,则报错,ValueError: substring not found

#3.count() : 返回某个子串在字符串中出现的次数
#print(mystr.count('and', 15, 30)) #输出 1
#print(mystr.count('and')) #输出 2
#print(mystr.count('ands')) #输出 0

#rfind() : 和find()的功能相同,但查找的方向为右侧   r -> right ,下标还是从左开始计算
#rindex() : 和rindex()的功能相同,但查找的方向为右侧, 下标还是从左开始计算

print(mystr.rfind('and')) #25

三. 字符串修改

mystr = "hello python and it cast and come on China!"
#1. replace() : 替换
#字符串序列.replace(旧子串,新子串,替换次数)
#replace()函数有返回值,返回替换后的字符串,原有字符串不改变
#这里引申一个知识点:字符串是不可变类型变量
#根据数据是否可变,可以划分 可变类型 和 不可变类型
#注意:替换次数如果查出子串出现次数,则替换次数为该子串出现次数。替换次数可以不写
#如果不写,则代表全部替换

#print(mystr.replace('and', 'he'))
#print(mystr.replace('and', 'he', 1))

#2. split() -- 分割,返回一个列表,按照指定字符分割字符串,会丢失掉分割字符串
#语法:字符串序列.split(分割字符串,num)
#num表示根据分割字符,分割多少次,即将来返回数据个数为num + 1个
mlist = mystr.split('and')
print(mlist) #输出 : ['hello python ', ' it cast ', ' come on China!']
mlist = mystr.split('and', 1)
print(mlist) #输出 : ['hello python ', ' it cast and come on China!']

#3. join() : 用一个字符或者子串合并字符串,即是将多个字符串合并为一个新的字符串
#语法:字符或子串.join(多字符串组成的序列)

mlist = ['aa', 'bb', 'cc']
new_str = "...".join(mlist)
print(new_str) #输出 aa...bb...cc

#4. capitalize() : 将字符串的第一个字符转换成大写, 注意,转换后,只有第一个字符大写,其他的字符全部小写
print(mystr.capitalize()) #输出 Hello python and it cast and come on china!

#5. title() : 将字符串的每个单词首字母转换成大写
print(mystr.title()) # 输出 Hello Python And It Cast And Come On China!

#6. lower() : 将字符串中的大写转小写、
print(mystr.lower()) # 输出 hello pyton and it cast and come on china!

#7. upper() : 将字符串中的小写转大写
print(mystr.upper()) # 输出 HELLO PYTHON AND IT CAST AND COME ON CHINA!

#*****删除空白字符*****
mystr = "    hello python and it cast and come on China!    "
#8. lstrip() : 删除左侧空白字符 l -> left
print(mystr.lstrip())

#9. rstrip() : 删除右侧空白字符 r -> right
print(mystr.rstrip())

#10. strip() : 删除两侧空白字符
print(mystr.strip())

#*****设置字符串左 中 右 对齐的方式

#11. ljust() : 返回一个原字符串左对齐,并使用指定字符(默认空格)填充至对应长度的新字符串
#语法 : 字符串序列.ljust(长度,填充字符)

#12. rjust() : 返回一个原字符串右对齐,并使用指定字符(默认空格)填充至对应长度的新字符串,语法和ljust()相同

#13. center() : 返回一个原字符串居中对齐,并使用指定字符(默认空格)填充至对应长度的新字符串,语法和ljust()相同
'''
mystr = "hello"
mystr.ljust(10)
'hello     '
mystr.ljust(10, '.')
'hello.....'
mystr.rjust(10)
'     hello'
mystr.rjust(10, '.')
'.....hello'
mystr.center(10)
'  hello   '
mystr.center(10, '.')
'..hello...'

'''

四. 字符串判断

mystr = "hello python and it cast and come on China!"
#判断开头
# startswith() : 检查字符串是否以指定子串开头,是则返回True, 不是则返回False
# 如果设置开始和结束位置下标,则在指定范围内检查
# 语法 : 字符串序列.startswith(子串, 开始下标位置, 结束下标位置)
print(mystr.startswith('hello'))  #输出 True
print(mystr.startswith('he'))     #输出 True
print(mystr.startswith('e', 1, 3))#输出 True
print(mystr.startswith('ell'))    #输出 False

# endswith() : 检查字符串是否以指定的子串开头,是则返回True, 不是则返回False
print(mystr.endswith('ina!'))    #输出 True
print(mystr.endswith('o', 0, 5)) #输出 True
print(mystr.endswith('China'))   #输出 False

# isalpha() : 如果字符串至少有一个字符并且字符都是字母则返回 True, 否则返回 False
print(mystr.isalpha()) #输出 False
# isdigit() : 如果字符串只包含数组则返回 True, 否则返回 False
mystr1 = '12345'  #输出 True
print(mystr1.isdigit())
# isalnum() : 数字或字母或数字字母组合
print(mystr.isalnum()) #输出 False
print(mystr1.isalnum()) #输出 True
mystr2 = "abc123"
print(mystr2.isalnum()) #输出 True
# isspace() : 判断是否都是空格
mystr3 = "    "
print(mystr3.isspace())  #输出 True

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值