案例一::输入一个字符串,统计它包含的大小字母的个数
s=input("请输入一个字符串:")
n=0
m=0
for i in range(len(s)):
if s[i]>="A" and s[i]<="Z":
m=m+1
if s[i]>="a" and s[i]<="z":
n=n+1
print("字符串:",s,"中大写字母个数为:",m,",小写字母个数为:",n)
案例二::输入一个字符串,将其反向显示
# 方法一
def reverseA(s):
t=""
for i in range(len(s)):
t=s[i]+t
return t
# 方法二
def reverseB(s):
t=""
for i in range(len(s)-1,-1,-1):
t=t+s[i]
return t
s=input("请输入一个字符串:")
print(reverseA(s))
print(reverseB(s))
案例三::输入一个字符串,去掉字符串两边的空格
def trim(s):
t=""
i=0
j=len(s)-1
while i<=j and s[i]==" ":
i=i+1
while i<=j and s[j]==" ":
j=j-1
for k in range(i,j+1):
t=t+s[k]
return t
s=input("请输入一个字符串:")
t=trim(s)
# print(len(t))
print("字符串:",s,"取出左右两边空格后的字符串为:",t)
案例四:英文字母的大小写转换
如果 c 是一个大写英文字母,那么 ord © 是它的编码, ord©- ord(“A”) 是它相对 A 的偏移量, ord(“a”) 是 a 的编码,显然 ord(“a”)+ ord©- ord(“A”) 是 c 对应的小写字母的编码,因此chr(ord(“a”)+ord©-ord(“A”))就是c对应的小写字母,例如:
c=“P”
d=chr(ord(“a”)+ord©-ord(“A”))
print(d)
那么d是小写"p"。
同样如果c是一个小写的英文字母,chr(ord(“A”)+ord©-ord(“a”))是它对应的大写字母。
# 编写把一个串中所有小写字母变大写的函数
def myToUpper(s):
t=""
for i in range(len(s)):
if s[i]>="a" and s[i]<="z":
t=t+chr(ord("A")+ord(s[i])-ord("a"))
else:
t=t+s[i]
return t
# 编写把一个串中所有大写字母变小写的函数
def myToLower(s):
t=""
for i in range(len(s)):
if s[i]>="A" and s[i]<="Z":
t=t+chr(ord("a")+ord(s[i])-ord("A"))
else:
t=t+s[i]
return t
s=input("请输入一个字符串:")
print(myToUpper(s))
print(myToLower(s))
案例无:截取字符串子串
# 设计函数 subString(s,start,length) 表示从 s 的 start 位置开始,取出长度为 length 的一个子串。
def subString(s,start,length):
m=len(s)
if start>=length:
return ""
t=""
i=start
while i<start+length and i<m:
t=t+s[i]
i=i+1
return t
print(subString("aabbcc",2,1))
print(subString("aabbcc",2,2))
print(subString("aabbcc",2,3))