python练习

执行结果如下:


代码如下:
import random
a=' hello World '
b='hello 我是 中文 123'
c='welcome,NanJing!123'
d=[" hello world "," ni hao "," zai jian "]
#1.去掉字符串中所有的空格
print("1:")
print(a.replace(' ',''))
#2.获取字符串中汉字的个数
print("2:")
print("汉字个数为",str(b.encode('utf-8')).count("\\x")//3)
#3.将字母全部转换为大写和小写
print("3:")
print(a.upper())    #大写
print(a.lower())    #小写
#4.根据标点符号对字符串进行分行
print("4:")

#5.去掉字符串数组中每个字符串的空格(循环)
print("5:")
for i in d:
    print(i.replace(' ', ''))
#6.随意输入心中想到的一个书名,然后输出它的字符串长度(len属性)
print("6:")
#print("字符串长度为",len(input("请输入一个书名:")))
print("字符串长度为",len("哈姆雷特"))
#7.接收用户输入的字符串,将其中的字符进行排序,并以逆序输出,例如:acdefb - abcdef - fedcba
print("7:")
#index=sorted(str(input("请输入一个字符串")))
index=sorted("acdbfe")
print("排序后:",''.join(index))
print("逆序输出:",''.join(index[::-1]))
#8.用户输入一句英文,将其中的单词以反序输出 例如:hello c sharp --- sharp c hello
print("8:")
#index=(str(input("请输入一句英文")))
index="hello World hello JinChen"
print("单词反序输出:",' '.join(index.split(" ")[::-1]))
#9.用户输入一句话,找出所有”呵“的位置
print("9:")
#index=(str(input("请输入一句话")))
index="123 ;呵呵; 3呵21呵呵  呵1呵2"
i = index[0::].find("呵")
j=i
while True:
    if i==-1:
        print("是呵的位置")
        break
    print(j,end=" ")
    i=index[j+1::].find("呵")
    j=j+1+i
#10.有个字符串数组,存储了10个书名,书名有长有短,现在将他们统一处理,若长度大于10,则 截取长度为8的子串,将统一处理后的结果输出
print("10:")
e=["aaaaaaaaaaaaa","bbbbbb","c","ddddddddddddddd","fff","ggggggg","hhhhhhhhhhhhhh","iiiiiiiiiiiiiii","jjjjjjjjjjjjjjjjjjj","kkk"]
for i in e:
    if len(i)>10:
        print(i[:8:],end=" ")
    else:
        print(i,end=" ")
#11.用户输入一句话,找出所有”呵呵“的位置
print("11:")
#index=str(input("请输入一句话"))
index="123 ;呵呵; 3呵21呵呵  呵1呵2"
i = index[0::].find("呵呵")
j=i
while True:
    if i==-1:
        print("是呵呵的位置")
        break
    print(j,end=" ")
    i=index[j+1::].find("呵呵")
    j=j+1+i
#12.如何判断一个字符串是否是另一个字符串的子串
print("12:")
a="abcdefg"     #a=str(input("请输入一个字符串a"))
b="abc"         #b=str(input("请输入另一个字符串b"))
d="abs"
def str1(a,b):
    c=a.find(b)
    if c==-1:
        print("b不是a的子串")
    else:
        print("b是a的子串")
str1(a,b)
str1(a,d)
#13.如何验证一个字符串中的每一个字符均在另一个字符串中出现
print("13:")
def str2(a,b):
    c=0
    for i in b:
        if a.find(i)==-1:
            print("b不是每一个字符都在a中出现")
            c=1
    if c==0:
        print("b中所有字符都在a中出现")
str2(a,b)
str2(a,d)
#14.如何生成无数字的全字母的字符串
print("14:")
strg=""
num=10          #num=int(input("请输入要生成的字母字符串长度"))
for x in range(num):
    sum=random.randint(97,122)  #a=97,z=122
    char=chr(sum)
    strg=strg+char
print(strg)
#15.如何随机生成带数字和字母的字符串
print("15:")
strg=""
num=10          #num=int(input("请输入要生成的随机字符串长度"))
for x in range(num):
    s=random.randint(0,9)           #随机0~4是数字,5~9是字母
    if s>=5:
        sum=random.randint(97,122)  #a=97,z=122
        char=chr(sum)
        strg=strg+char
    else:
        sum=str(random.randint(0,9))
        strg=strg+sum
print(strg)
#16.如何判定一个字符串中既有数字又有字
print("16:")

其中第4题和第16题没解决

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wzzzzz06

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值