第二天学习-下

第二天学习-下

2.字符串

2.1.什么是字符串

  • 用引号引起来的一串字符
  • 用引号来创建字符串。
    • 单引号
    • 双引号
    • 三单引号
    • 三双引号
str1='Hangzhou'
str2="Hangzhou"
str3='''Hangzhou'''
str4="""Hangzhou"""
print(type(str1),type(str2),type(str3),type(str4))

2.2.字符串的运算及常见操作

(1)拼接
  • 将两个字符串拼在一起(也可以用于字典,但不可跨类型拼接)
a='Hello'
b=',python.'
print(a+b)
(2)重复
  • 让字符串重复数次
a='Hello,'
print(a*3)
(3)索引(偏移),切片
  • 可以单独取出字符串中的元素,也可以截取一段想要的字符
str1 = 'Now,I learning Python'
for i in str1:
    print(i,end=' ')
print(str1[:3])
#冒号前面参数不取则默认从0开始,冒号后面不取则默认取到最后
print(str1[2:10:2])
#第三个冒号则是步长
print(str1[::-1])
#倒序
(4)大小写转换
str1 = 'Now,I learning Python'
print(str1.lower())
#全部小写
print(str1.upper())
#全部大写
print(str1.swapcase())
#大小写互换
str2='now i leanring python'
print(str2.title())
#变成英文中常用的标题形式,每个标题的首字母大写
print(str1.capitalize())
#首字母大写
  • 小练习
truecode = 'AFBd'
for i in range(3):
    getcode = input('请输入验证码:')
    if getcode.upper() == truecode.upper():
        print('输入成功')
    elif i==2:
        print('呵呵呵呵呵呵呵呵呵')
    else:
        print('重来一遍,剩余%s次'%(2-i))
(5)字符串的格式输出对齐
str1='Life is short,you need python.'
print(str1.center(41,'*'))
#str1.center(len,'填充符号') 居中对齐,两侧填充,len若小于len(str1),则无填充
print(str1.ljust(41,'*'))
#str1.ljust(len,'填充符号') 居左对齐,填充右边,len若小于len(str1),则无填充
print(str1.rjust(41,'*'))
#str1.rjust(len,'填充符号') 居右对齐,填充左边,……
print(str1.zfill(41))
#str1.zfill(len)居右对齐,默认填充0,……
(6)删除指定字符
str1='Life is short,you need python.'
print(str1.strip())
#删除开头和结尾的指定字符,不给参数则默认删除类似\n\t的符号等。
print(str1.lstrip())
#删除开头的指定字符……
print(str1.rstrip())
#删除结尾的指定字符……
(7)计数
str1='Life is short,you need python.'
print(str1.count('o'))
#str1.count(x,start,end)统计元素x在字符串[start,end-1]中出现的次数
(8)字符串搜素定位和替换
str1='Life is short,you need python.'
print(str1.find('o'))
#str1.find(x,start,end)查找元素x在字符串[start,end-1]并返回第一次出现的元素的索引值,查找不到则返回-1
print(str1.rfind('o'))
#str1.find(x,start,end)从右往左查找元素x在字符串[start,end-1]并返回第一次出现的元素的索引值,查找不到则返回-1
print(str1.index('o'))
#str1.index(x,start,end)查找元素x在字符串[start,end-1]并返回第一次出现的元素的索引值,查找不到则报错
print(str1.rindex('o'))
#str1.rindex(x,start,end)从右往左查找元素x在字符串[start,end-1]并返回第一次出现的元素的索引值,查找不到则报错
print(str1.replace('you need','I use'))
#str1.replace(old,new,order),用new替换掉old,order不填默认为全部
(9)字符串条件判断
str1='alpha666'
print(str1.isalnum())
#判断字符串是否仅由字母和数字组成
print(str1.isalpha())
#判断字符串是否仅由字母组成
print(str1.isdigit())
#判断字符串是否仅由数字组成
#'isalnum', 'isalpha', 'isdecimal', 'isdigit', 'isidentifier', 'islower', 'isnumeric', 'isprintable', 'isspace', 'istitle', 'isupper'等都是判断
(10)字符串的分割变换
str1='Life is short,you need python.'
print('-'.join(str1))
#将字符加到字符串中各元素之间
list1=['I','love','Python.']
print(' '.join(list1))
#能把一个list快速变成str
print(str1.split(' '))
#split(x,order)以x为分割点(去除x)切割字符串生成一个列表,order表示切几次,默认全部
print(str1.partition('is'))
#partition(x)以第一个x为分割点(保留x)切割字符串,x成为第二个元素,生成一个元祖
(11)ASCII值和字符的转换
chr(1) #digit--->alpha
ord('a')#alpha--->digit
  • 拓展:

    • string模块里封装一些函数,有助于你更好的使用
  • 小作业:

    • 生成一个四位的字母数字混合的验证码,输入验证码判断正误(不区分大小写)
import string
Truecode = ''
for i in range(4):
    Truecode += random.choice((string.printable[0:62]))
print(Truecode)
for i in range(3):
    getcode = input('请输入验证码:')
    if getcode.upper() == Truecode.upper():
        print('输入成功')
        break
    elif i == 2:
        print('三遍全错,呵呵呵呵')
    else:
        print('重来一遍,剩余%s次' % (2 - i))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值