Python学习日志——字符串

字符串

1、定义

  • 用引号引起来的一串字符
  • 用引号来创建字符串
    • 单引号
    • 双引号
    • 三单引号
    • 三双引号
name = "hangzhou"
area = 'gongshu'
history = "5000"

famous_person = """苏轼,许仙,白素贞"""
capticalof = '''越国,南宋'''
print(type(name),type(area),type(history),type(famous_person),type(capticalof))

结果为

在这里插入图片描述

pm = '''轻轻的我走了
正如我轻轻地来
'''
print(pm)

结果:
在这里插入图片描述

2、字符串的运算及常见操作

  • 拼接
a = "hello"
b = ",python"
print(a+b)

拼接使必须是同一种数据类型

  • 重复
a = "abc"
print(a*3)

在这里插入图片描述

  • 索引(偏移)[ ]
sr = "Python"
for i in range(0,6):
	print(sr[i],end = " ")

结果为:
在这里插入图片描述

当然字符串的索引值也可以为负值。若索引值为负值,则表示由字符串的结尾向前数。最后一个元素的索引值为-1,以此类推。

sr = "Python"

print(sr[-2])

结果为:

在这里插入图片描述

对字符串的切片受用方法为:

a[x,y]

这里表示分割字符串a,x表示开始索引值,y表示结尾索引值(不包括)

sr = "Life is short, you need python."

print(sr[2:10])

结果为:
在这里插入图片描述

  • 大小写互换
    • sr.lower()—>转小写
    • sr.upper()—>转大写
    • sr.swapcase()—>大小写互换
    • sr.title()—>转换为标题的形式
    • sr.capitalize()—>首字母大写
sr = "Life is short, you need python."

print(sr.lower())
print(sr.upper())
print(sr.swapcase())
print(sr.title())
print(sr.capitalize())

结果为:

在这里插入图片描述

简单的一个应用:验证码的不论大小写

code = "FGnb"
iput = input("请输入验证码:")
if iput.lower() == code.lower():
	print("验证码正确!")
else:
	print("对不起,验证码错误,请重试!")

在这里插入图片描述

在这里插入图片描述

3、字符串的格式输出对齐

  • sr.center([len],[填充字符])
sr = "Life is short, you need python."
print(sr.center(41,'!'))

结果为:

在这里插入图片描述

  • sr.ljust([len],[填充字符])
  • sr.rjust([len],[填充字符])
sr = "Life is short, you need python."
print(sr.ljust(41,'!'))
print(sr.rjust(41,'#'))

结果为
在这里插入图片描述

  • sr.zfill([len])居右对齐,默认填充0
sr = "Life is short, you need python."
print(sr.zfill(41))

在这里插入图片描述

4、删除指定字符

  • sr.strip()删除左右两边的指定字符
  • sr.lstrip()
  • sr.rstrip
sr = "####Life is short, you need python.####"
print(sr.strip('#'))
print(sr.lstrip('#'))
print(sr.rstrip('#'))

结果为:

在这里插入图片描述

当然这种匹配的字符必须是从头匹配,如果在中间那就无法生效

sr = "!!####Life is short, you need python.####!!"
print(sr.strip('#'))
print(sr.lstrip('#'))
print(sr.rstrip('#'))

在这里插入图片描述

5、计数

  • sr.count()计算某一元素在字符串中出现的次数,可指定开始与结束搜索的索引值
sr = "!!####Life is short, you need python.####!!"
print(sr.count('o'))
print(sr.count('o',9,17))

结果为:

在这里插入图片描述

6、字符串的搜索定位与替换

  • sr.find(),检测指定字符串中是否包含子串,存在返回索引值,否则返回-1
  • sr.index(),功能与上同,不同的是不存在时会报一个异常
  • sr.rindex()功能相同,从左往右查找
sr = "!!####Life is short, you need python.####!!"

print(sr.find('e',9,25))
print(sr.find('z',9,25))
print(sr.index('z',9,25))

在这里插入图片描述

  • sr.replace([现有],[替换],替换个数)
sr = "!!####Life is short, you need python.####!!"
print(sr.replace('you need','I use'))

在这里插入图片描述

使用时需注意空格的匹配问题!

7、字符串条件判断

  • isalnum()判断字符串是否由字母和数字组成
  • isalpha()判断是否只是由字母或汉字组成
  • isdigit()判断是否只由数字构成
sr = 'fgnb123kky哈哈哈'
sr1 = '哈哈哈123'
sr2 = '哈哈哈abc'
print(sr.isalnum())
print(sr1.isalnum())
print(sr2.isalnum())
print(sr.isalpha())
print(sr1.isalpha())
print(sr2.isalpha())
print(sr.isdigit())

在这里插入图片描述

其他与字符串操作有关的函数

在这里插入图片描述

8、制表符的转化

  • sr.expandtabs()
nm = '0123456789012345678901234567890'
sr = "Life is\tstrange,\twhat's the answer"
print(nm)
print(sr.expandtabs())

在这里插入图片描述

9、字符串的分割变换

  • join(),将指定字符插入到元素之间
  • split(),以指定字符分割并去除该字符
  • partition(),以指定字符分割并保留该元素
sr = "Life is strange, what's the answer"
print('$'.join(sr))
li = ['what','can','i','do']
print(' '.join(li))

print(sr.split('w'))
print(sr.partition('e'))

结果为:
在这里插入图片描述

10、ASCII值和字符的转化

  • chr()—>数字转字符
  • ord()—>字符转数字

在这里插入图片描述

11、字符串的格式化符号

格式化符号含义
%c格式化字符及ASCII码
%s格式化字符串
%d格式化整数
%u格式化无符号整型
%o格式化无符号八进制数
%x格式化无符号十六进制数
%f格式化浮点数,可指定精度
%e科学计数法格式化浮点数
%p十六进制格式化变量的地址
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值