字符串

字符串

1.什么是字符串

  • 用引号引起来的一串字符
  • 用引号来创建字符串
    • 单引号
    • 双引号
    • 三单引号
    • 三 双引号
name="hangzhou"
area='gongshu'
history="5000"
famous_person="""sushi,xuxian,baisuzhen"""
capticalof ='''yuguo,nansong'''
print(type(name),type(area),type(history),type(famous_person),type(capticalof))

字符串的常见操作

(1)拼接

a="hello"
b=",python"
print(a+b)
#拼接基于同一种数据类型

(2)重复

a="city college"
print(a*3)

(3) 索引(偏移)

sr ="python"
print(len(sr))
print(sr[5])
print(sr[1:2])

(4)大小写转换

  • 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())

例题:验证码输入

certid="AbCd"
ipt =input("请输入验证码:")
if ipt.lower()==certid.lower():
    print("输入成功")
else :
    print("对不起,输入错误,请重试")

(5)字符串的格式输出对齐

  • sr.center([len],[填充符号]),居中对齐
  • sr.ljust([len],[填充对齐]),居左对齐
  • sr.rjust([len],[填充对齐]),居右对齐
  • sr.zfill([len]),居右对齐。默认填充0

(6)删除指定字符

  • sr.strip()
  • sr.lstrip()
  • sr.rstrip()

(7)技术

  • sr.count()

  • print(sr.count('o',9,17))#从第九位到第十六位'o'的个数
    

(8)字符串搜索定位和替换

  • sr.find() 查找元素并返回第一次出现的元素的索引值
  • sr.find(’’,x,y)在x到y的范围内搜素’'的位置#查找不到返回-1
  • sr.index()查找元素并返回第一次出现的元素的索引值,查找不到报错
  • sr.rindex()从右往左查找
  • sr.replace([现有],[替新])
print(sr.replace('t','T',1))#替换第一个't'

(9)字符串条件判断

  • isalnum(),判断字符串由字母或者数字组成
  • isalpha(),仅有字母
  • isdight(),仅有数字
a="abc654136def"
b="666"
c="abc"
print(c.isalpha())

(10)制表符的转化

  • sr.expandtabs

(11)字符串的分割变换

  • join(),将指定字符插入到元素之间
  • split(),将指定字符分割字符串并去除该字符
  • partition(),以指定字符分割字符串并保留该字符
sr="life one \tday"
print('+'.join(sr))
li=["i","love","python"]
print(' '.join(li))
sr="life one o day"
print(sr.split('o'))
sr="life one o day"
print(sr.split('o',1))#输出列表
sr="life one o day"
print(sr.partition('o'))#输出元组

(13)ASCII值和字符的转化

chr() dight—>alpha

ord() alpha---->dight

拓展:

string模块

[‘Formatter’, ‘Template’, ‘_ChainMap’, ‘_TemplateMetaclass’, ‘all’, ‘builtins’, ‘cached’, ‘doc’, ‘file’, ‘loader’, ‘name’, ‘package’, ‘spec’, ‘_re’, ‘_string’, ‘ascii_letters’, ‘ascii_lowercase’, ‘ascii_uppercase’, ‘capwords’, ‘digits’, ‘hexdigits’, ‘octdigits’, ‘printable’, ‘punctuation’, ‘whitespace’]

print('%o' % 17)#将一个数转化为八进制
print('%x' % 17)#将一个数转化为十六进制
%d #将一个数转化为十进制
#21  11

print(’%f’ % 1.11) # 默认保留6位小数
1.110000
print(’%.1f’ % 1.11) # 取1位小数
1.1
print(’%e’ % 1.11) # 默认6位小数,用科学计数法
1.110000e+00
print(’%.3e’ % 1.11) # 取3位小数,用科学计数法
1.110e+00
print(’%g’ % 1111.1111) # 默认6位有效数字
1111.11
print(’%.7g’ % 1111.1111) # 取7位有效数字
1111.111
print(’%.2g’ % 1111.1111) # 取2位有效数字,自动转换为科学计数法
计数法

1.110e+00
print(’%g’ % 1111.1111) # 默认6位有效数字
1111.11
print(’%.7g’ % 1111.1111) # 取7位有效数字
1111.111
print(’%.2g’ % 1111.1111) # 取2位有效数字,自动转换为科学计数法
1.1e+03

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值