| 
 | 
 
 
发表于 2020-12-30 00:13:34
|
显示全部楼层
 
 
 
str_squ=input('请输入大小写字母:') 
list1=[] 
listupper='' 
listlower='' 
for i in str_squ: 
    list1.append(i) 
list1.sort()#对字母进行排序 
print(list1) 
for a in range(len(list1)):#大小写字母分开 
    if list1[a].isupper(): 
        listupper=listupper+list1[a] 
    else: 
         listlower=listlower+list1[a] 
print(listlower,listupper) 
 
def splitA(str_input): 
    listmedium=[] 
    a='' 
    for i in range(len(str_input)-1): 
        if str_input[i]==str_input[i+1]: 
            a=a+str_input[i] 
        else: 
            a=a+str_input[i]+' ' 
    a=a+str_input[len(str_input)-1] 
    listupper_s=a.split(' ') 
    return (listupper_s)#不同字母拆分 
 
lower=splitA((listlower)) 
upper=splitA(listupper) 
print(lower,upper) 
concentrate_lower=[] 
for menber in lower:#把小写组首字母提出来转为大写 
    concentrate_lower.append(menber[0].upper()) 
print(concentrate_lower) 
l_tra_u_dir={}#构建小写字母的查找字典 
for n in range(len(concentrate_lower)-1): 
    l_tra_u_dir[concentrate_lower[n]]=lower[n] 
print(l_tra_u_dir) 
local_num=0 
for n in l_tra_u_dir: 
    if n==upper[local_num][0]: 
        upper[local_num]=upper[local_num]+l_tra_u_dir[n] 
    else: 
        pass 
    local_num+=1 
print(upper) 
final_str='' 
for i in upper: 
    final_str=final_str+i 
print(final_str) 
 
不知道ord()函数,捣鼓了两三天,反正弄出来了,还蛮有收获的。 |   
 
 
 
 |