python小练习11-15

11.统计字符串中的字母,空格,数字

# 从用户处获取输入,提示用户输入一串字符,并将输入的值赋给变量str  
str = input("请输入一串字符:")  
  
# 初始化四个计数器变量,分别用于统计字母、空格、数字和其他字符的数量  
letter, space, digit, other = 0, 0, 0, 0  
  
# 遍历用户输入的每一个字符  
for chacter in str:  
    # 如果字符是字母(无论是大写还是小写)  
    if chacter.isalpha():  
        # 字母计数器加1  
        letter += 1  
    # 如果字符是空格(包括空格、制表符、换行符等)  
    elif chacter.isspace():  
        # 空格计数器加1  
        space += 1  
    # 如果字符是数字(0-9)  
    elif chacter.isdigit():  
        # 数字计数器加1  
        digit += 1  
    else:  
        # 如果字符不是字母、空格也不是数字,那么就是其他字符  
        # 其他字符计数器加1  
        other += 1  
  
# 打印统计结果,使用格式化字符串将计数器变量的值插入到字符串中  
print("该字符串中包含%d字母、%d空格、%d数字、%d其他字符" % (letter, space, digit, other))


请输入一串字符:ejdnxu0--=
该字符串中包含6字母、0空格、1数字、3其他字符

12.求s=a+aa+aaa+aaaa+aa…a

# 请求用户输入一个1到9之间的整数,并将其存储在变量a中。注意此时a是字符串类型。  
a = input("请输入1-9之间的任意整数。\n") # type(a) = string  
  
# 请求用户输入一个数字,表示需要连续相加的数字的个数,并将其转换为整数类型后存储在变量n中。  
n = int(input("请问需要几个数字连续相加?\n"))  
  
# 初始化一个空字符串str,用于后续构建由多个a组成的字符串。  
str = "" # 用于接收若干个a组成的字符串  
  
# 初始化一个变量sum,用于存储累加的结果。  
sum = 0  
  
# 使用for循环,从0到n-1(总共n次)  
for num in range(0, n):  
    # 在每次循环中,将字符串a追加到str变量的末尾。  
    str = str + a  
      
    # 如果当前不是最后一次循环(即num小于n-1),则打印str后面跟着一个加号和一个换行符(end=""表示不换行)。  
    # 否则(即最后一次循环),只打印str本身。  
    print("%s+" % str, end="") if num < n - 1 else print("%s" % str, end="")  
      
    # 将str转换为整数并累加到sum变量中。  
    sum += int(str)  
  
# 打印最终的累加结果。  
print("=%d" % sum)

13.找出列表 a = [“hello”, “world”, “yoyo”, “congratulations”] 中单词最长的一个。

def test():
    a=["hello","world","yoyo","congratulations"]
    #统计数组中第一个值的长度
    length=len(a[0])
    for i in a:
        if len(i)>length:
            length=i
    return length
print(test())

运行结果:congratulations

14.取出列表 L1 = [1, 2, 3, 11, 2, 5, 3, 2, 5, 33, 88] 中最大的三个值。

import heapq
L1 = [1, 2, 3, 11, 2, 5, 3, 2, 5, 33, 88]
top_three=heapq.nlargest(3,L1)
print("最大的三个值是:",top_three)

运行结果:最大的三个值是: [88, 33, 11]

15.把列表a=[1,-6,2,-5,9,4,20,-3]中的数字绝对值从小到大排序。

a=[1,-6,2,-5,9,4,20,-3]
# 使用列表推导式获取每个数字的绝对值
value= [abs(num) for num in a]
# 对绝对值进行排序
sorted_value=sorted(value)

print(sorted_value)

运行结果:[1, 2, 3, 4, 5, 6, 9, 20]

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值