字符串的特性及练习

字符串的特性及练习

1. 字符串的索引,切片,重复,连接

1.索引:索引从0开始
s = 'hello'
print(s[0]) 		##显示第一个字符
print(s[1]) 		##第二个字符
print(s[4])			##拿出最后一个字符
print(s[-1])		##拿出最后一个字符

2.切片
s = 'WESTOS'
print(s[0:3])   	##显示索引为0 1 2的字符
print(s[0:4:2]) 	##s[start:stop:step] 从satrt开始到end -1结束 步长为step
print(s[:])			##显示所有的字符
print(s[:3])		##显示前3个字符
print(s[::-1])		##字符串的反转
print(s[2:]) 		##除了前2个字符之外的其他字符

3.重复
s = '我爱你'
print(s * 10)

4.连接
a = '我爱你'
b=  '中国'
print(a + b)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
2. 字符串的成员操作符,循环遍历,枚举,zip压缩

1.成员操作符
s = 'hello'
print('he' in s)
print('hl' in s)
print('aa' in s)
print('he' not in s)

2.循环遍历
s = '我爱你'
for i in s:
    print(i)

3.枚举:返回索引值与对应的value值
for i,v in enumerate('我爱你'):
    print( i,'----',v)
# v为字符串的返回值

4.zip压缩
a = 'hello westos'
b = 'made in china'
for i in zip(a,b):
    print(i)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3. 字符串的判断,转换,去除,对齐,统计

1.字符串的判断
s.istitle() 是否为标题,返回布尔值,只要有一个元素不满足,就返回False
s.isupper() 是否为大写字母,返回布尔值,只要有一个元素不满足,就返回False
s.islower() 是否为小写字母,返回布尔值,只要有一个元素不满足,就返回False
s.isdigit() 是否为数字,返回布尔值,只要有一个元素不满足,就返回False
s.isalpha() 是否为字母,返回布尔值,只要有一个元素不满足,就返回False
s.isalnum() 是否为字母与数字的结合,返回布尔值,只要有一个元素不满足,就返回False
s.startswith(xxx) 以xxx开始
s.endswith(xxx) 以xxx结尾

2.字符串的转换
a='hELLo'
b='WEstos'
print(a.lower())  				# s.lower() 转化为小写字母
print(b.upper())  				# s.upper() 转化为大写字母
print(a.title(),b.title())  	# s.title() 转化为标题

3.字符串的去除
s.rstrip() :去除右边的空格
s.lstrip() :去除左边的空格
s.strip() :去除空格
注意:s.strip()去除左右两边的空格,空格为广义的空格(包括:\t \n)
s.strip(‘x’) :去除字符串中的所有字符x
s.lstrip(‘x’) :去除字符串中最左边的字符x

4.字符串的对齐
s.center(num) :字符串s位于30个单元格的中间
s.center(num,’#’) :字符串s位于30个单元格的中间,其他单元格用#补齐
s.ljust(num,’#’) :字符串s位于30个单元格的左边,其他单元格用#补齐
s.rjust(num,’#’) :字符串s位于30个单元格的右边,其他单元格用#补齐
 字符串的统计
s.count(‘xxx’) :统计字符串s中子字符串xxx出现的次数
len(s) :统计字符串s的长度

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4. 字符串的查找与替换,分离与连接

1.字符串中的查找与替换
s.find(‘xxx’) :找到子字符串xxx,并返回子字符串最小的索引
s.rfind(‘xxx’) :找到字符串s最右边出现的子字符串xxx,并返回子字符串最小的索引
s.replace(‘xxx’,‘xxx’) :替换字符串中的xxx为xxx

2.字符串的分离和连接
s.split(‘xxx’) :以xxx作为分隔符分离字符串s,存放在列表中
‘xxx’.join(s) :通过指定的连接符号,连接列表中的每个字符,形成新的字符串

a='hehe haha westos hello'
print(a.split(' '))
print(a.split(' ')[::-1])
b='你好中国'
print('~'.join(b))

在这里插入图片描述
在这里插入图片描述

练习:

  1. 判断是否是回文数
回文数:是指正序(从左向右)和倒序(从右向左)读都是一样的整数
num = input('Num:')
print(num == num[::-1])	

在这里插入图片描述
2. 判断变量名定义是否合法

思路:变量名可以由字母、数字、下划线组成;变量名只能以字母和或者下划线开头。
while True:
    s = input('变量名:')
    if s == 'exit':
        print('exit')
        break
    if s[0].isalpha() or s[0] == '_':
        for i in s[1:]:
            if not (i.isalnum() or i == '_'):
                print('%s变量名不合法' % (s))
                break
        else:
            print('%s变量名合法' % (s))
    else:
        print('%s变量名不合法' % (s))

在这里插入图片描述
3.

给定一个句子(只包含字母和空格), 将句子中的单词位置反转,
单词用空格分割, 单词之间只有一个空格,前>后没有空格。
比如:  “hello xiao mi”-> “mi xiao hello”

a=input('请输入一个句子:')
b=(a.split(' ')[::-1])
print(' '.join(b))

在这里插入图片描述
4.

要求:输入两个字符串,从第一个字符串中删除第二个字符串中含有的所有字符。

S1=input('请输入第一个字符串:')
S2=input('请输入第二个字符串:')
For  i  in  S1:
    For  j  in  S2:
        If  i==j:
            S1=S1.replace(j,'')
print(S1)

在这里插入图片描述
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值