一、下标索引练习
# 1、给你一个字符串s,请你返回s中长度为3的好子字符串的数量
# 注意:如果相同的好子字符串出现多次,每一次都应该被记录答案之中,
# 好子字符串是一个字符串中连续的字符序列,且各不相同
s = input("请输入一个单词:")
count = 0
for i in range(len(s)-2):
if s[i] != s[i+1] and s[i] != s[i+2] and s[i+1] != s[i+2]:
print(s[i]+s[i+1]+s[i+2])
count += 1
print(count)
二、切片练习
# # 1、从键盘输入一个字符串,判断这个字符串是不是回文字符串【使用切片】
# # 回文字符串:就是正着读和倒着读一样的字符串。
s = input("输入一个字符串:")
if s[::] == s[::-1]:
print(f"{s}是一个回文字符串")
else:
print(f"{s}不是一个回文字符串")
# 2、从键盘输入一个字符串,判断这个字符串是不是回文字符串【使用下标】
# 回文字符串:满足对称性
# 第一个字符和倒数第一个字符相等,
# 第二个和倒数第二个字符相等。。。
s = input("输入一个字符串:")
for i in range(len(s)//2):
if s[i] != s[-(i+1)]:
print(f"{s}不是一个回文字符串")
break
else:
print(f"{s}是一个回文字符串")
三、字符串相关函数练习
3.1: 转换函数
# 1、从键盘输入一个字符串,遍历该字符串;
# 将其中的小写字母变大写字母,大写字母变小写字母。
s = input("输入一个字符串:") # Hello
x = ''
for i in s:
if 'A' <= i <= "Z":
x += i.lower()
elif 'a' <= i <= 'z':
x += i.upper()
print(x)
3.2: 判断函数
# 从键盘输入一串字符串,先将所有大写转换成小写;
# 再移除其中的非数字、字母字符之后,判断是不是回文字符串
s = input("输入一个字符串:")
lower_s = s.lower()
num_str = ''
for i in lower_s:
if i.isalnum():
num_str += i
if num_str[::] == num_str[::-1]:
print(f"{num_str}是回文字符串!")
else:
print(f"{num_str}不是回文字符串!")
3.3: 分割函数
# 1. 从请求地址中提取出用户名和域名
# str = http://www.163.com?userName=admin&pwd=123456
web = "http://www.163.com?userName=admin&pwd=123456"
ll = web.split('?')
web_link = ll[0]
print(f"网址是:{web_link}")
user_name = ll[1].split('&')[0].split('=')[1]
pwd = ll[1].split('&')[1].split('=')[1]
print(f"用户名:{user_name}, 密码:{pwd}")
3.4: 其它函数
# 练习题1:
mstr = "good good study , day day up;"
nstr = " No Pain No Gain. "
# 将mstr和nstr合并,并输出。
print(mstr + nstr)
# 求mstr的长度并输出
print(len(mstr))
# 遍历字符串nstr
for i in nstr:
print(f"{i}", end=' ')
# 统计nstr中字母'o'的个数
print(nstr.count('o'))
# 去除nstr两端的空格
print(nstr.strip())
# mstr所有的字符换成大写并输出。
print(mstr.upper())
# mstr所有的字符换成小写并输出。
print(mstr.lower())
# 以空格为分割符将mstr分割并输出。
print(mstr.split(' '))
# 练习题2:
# 输入两个字符串,从第一个字符串中删除第二个字符串中所有字符。
# 例如:输入"abcde"和"be"
# 字符串变为"acd"
# 提示: ①使用in关键字判断元素存在
# ②使用replace内置方法进行元素替换
s1 = input("第一个字符串:") # abcdefg
s2 = input("第二个字符串:") # bef
for i in s1:
if i in s2:
s1 = s1.replace(i, '')
print(s1)
# 练习题3:
# 输入一个字符串,将这个字符串按照单词反序。
# 例如:输入this is a book,输出 book a is this。
s = input("输入一个字符串:")
ls = s.split()[::-1]
ss = ' '.join(ls)
print(ss)