当前位置:首页 » 《随便一记》 » 正文

【头歌-Python】Python第五章作业(初级)(7~16)

17 人参与  2024年04月25日 08:37  分类 : 《随便一记》  评论

点击全文阅读


禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/134913973
参考教程:B站视频讲解——https://space.bilibili.com/3546616042621301

如果代码存在问题,麻烦大家指正 ~ ~有帮助麻烦点个赞 ~ ~

Python第五章作业(初级)(7~16)

第7关:各位数字之和为5的数参考代码 第8关:字符串长度参考代码 第9关:字符串加密参考代码 第10关:输出单词参考代码 第11关:字符大小写转换参考代码 第12关:查找指定字符参考代码 第13关:随机密码生成器参考代码 第14关:模拟生成微软序列号参考代码 第15关:数列求和参考代码 第16关:单词个数参考代码

第7关:各位数字之和为5的数

任务描述
输入一个1000以内的正整数 n,在同一行内输出 [0,n] 之间各位数字之和为5的数,数字之间用空格分开(行末有一个空格)。

输入格式
输入一个1000以内的正整数 n

输出格式
符合条件的数

示例
输入:

100

输出:

5 14 23 32 41 50

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/134913973a = int(input())for i in range(a+1):    if i==5:        print(i, end=' ')    elif len(str(i))==2 and int(str(i)[0])+int(str(i)[1])==5:        print(i, end=' ')    elif len(str(i))==3 and int(str(i)[0])+int(str(i)[1])+int(str(i)[2])==5:        print(i, end=' ')

第8关:字符串长度

任务描述
用户输入一个字符串,程序输出字符串的长度

输入格式
输入一个字符串

输出格式
一个表示字符串长度的整数

示例 1
输入:

Hello world!

输出:

12

参考代码

print(len(input()))

第9关:字符串加密

任务描述
用户在一行中输入一个包括大小写字母和数字的字符串,编程将其中的大写字母用字母表中该字母后的第5个字母替代,小写字母用字母表中该字母后的第3个字母替代,其他字符原样输出,实现字符串加密。

输入格式
输入一个至少包含一个字母的字符串

输出格式
加密后的字符串

示例 1
输入:

Life is short, you need Python!

输出:

Qlih lv vkruw, brx qhhg Ubwkrq!

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/134913973a = 'ABCDEFGHIGKLMNOPQRSTUVWXYZ'b = 'FGHIGKLMNOPQRSTUVWXYZABCDE'c = 'abcdefghijklmnopqrstuvwxyz'd = 'defghijklmnopqrstuvwxyzabc's = input()res = ''for i in s:    n = a.find(i)    m = c.find(i)    if n==-1 and m==-1:        res+=i    elif n!=-1 and m==-1:        res+=b[n]    elif n==-1 and m!=-1:        res+=d[m]print(res)

第10关:输出单词

任务描述
输入一个英文句子,每个单词间用空格分隔,标点符号前面无空格,后面跟一个空格,请按出现顺序将每个单词分行输出(标点符号归属于前面的单词)。

输入格式
一个英文句子

输出格式
分行输出句子中的单词

示例
输入:

Never forget to say “thanks”.

输出:

Neverforgettosay“thanks”.

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/134913973a = input().split(' ')for j in a:    print(j)

第11关:字符大小写转换

任务描述
输入一个字符串,将其中大写字母转为小写,小写字母转为大写,其他字符保持原样,输出转换后的字符串。

输入格式
输入一个字符串。

输出格式
输出转换后的字符串。

示例 1
输入:

Hello, Python 3.7.4

输出:

hELLO, pYTHON 3.7.4

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/134913973s = input()res = ''for c in s:    if 'a'<=c<'z':        res += c.upper()    elif 'A'<=c<='Z':        res += c.lower()    else:        res += cprint(res)

第12关:查找指定字符

任务描述
编写程序,从用户给定字符串中查找某指定的字符。

输入格式
输入的第一行是一个待查找的字符

第二行是一个以回车结束的非空字符串。

输出格式
如果找到,在一行内按照格式“index = 下标”输出该字符在字符串中所对应的最小下标(下标从0开始); 否则输出"Not Found"。

示例 1
输入:

mprogramming

输出:

index = 6

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/134913973a = input()b = input()flag = 0for i in b:    if i==a:        print('index = ' + str(b.find(i)))        flag = 1        breakif flag==0:    print('Not Found')

第13关:随机密码生成器

任务描述
从字符串

'0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&\()*+,-.'

中每次随机抽取 1 个字符,重复 n 次,用取得的字符构成的一个新字符串用做密码,密码长度 n 和随机数种子 s 由用户输入。

本题必须使用random.choice()函数进行随机抽取

输入格式
在一行内输入2个正整数 ns,分别表示密码长度和随机数种子,数字间用半角逗号分隔。

输出格式
一个长度为 n 字符串

示例
输入:

10,5

输出:

wJ&3Xv6keL

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/134913973from random import *n, s = map(int, input().split(','))a = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ!"#$%&\()*+,-.'seed(s)for i in range(n):    c = choice(a)    print(c, end='')

第14关:模拟生成微软序列号

任务描述
微软产品一般都一个25位的序列号,是用来区分每份微软产品的产品序列号。产品序列号由五组被“-”分隔开,由字母数字混合编制的字符串组成,每组字符串是由五个字符串组成。如: 36XJE-86JVF-MTY62-7Q97Q-6BWJ2 每个字符是取自于以下24个字母及数字之中的一个: B C E F G H J K M P Q R T V W X Y 2 3 4 6 7 8 9 采用这24个字符的原因是为了避免混淆相似的字母和数字,如I1O0等,避免产生不必要的麻烦。 随机数种子函数语法为:random.seed(n)

本题要求应用random.choice()方法每次获得一个随机字符!!!

输入格式
在2行中各输入一个正整数:
第1个整数代表要生成的序列号的个数
第2个正整数代表随机数种子

输出格式
指定个数的序列号

示例
输入:

210

输出:

3CVX3-BJWXM-6HCYX-QEK9R-CVG4RTVP7M-WH7P7-RGWKW-4TC3B-KGJP2

平均代码量 15 行

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/134913973from random import *n = int(input())s = int(input())seed(s)c = 'BCEFGHJKMPQRTVWXY2346789'for i in range(n):    key = ''    for j in range(1, 26):        key += choice(c)        if j%5==0 and j!=25:            key += '-'    print(key)

第15关:数列求和

任务描述
本关任务:
计算特殊序列表达式的值,

a+aa+aaa+aaaa+...+a...a(N个a)

其中1<=a<=9,第N项由Na组成.
例:若a=1,N=3,表达式为:

1+11+111

编程要求
输入:
第一行输入一个整数A,且该数应该介于19之间(包含19
第二行输入一个整数N

输出:
输出其 N 项数列之和的值。
当输入不符合要求时输出:data error

测试说明
平台会对你编写的代码进行测试:

测试输入:

13

预期输出:

123

测试输入:

12-3

预期输出:

data error

开始你的任务吧,祝你成功!

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/134913973a = int(input())b = int(input())if a<1 or a>9 or b<0:    print('data error')else:    s = d = 0    for i in range(b):        d = d*10+a        s += d    print(s)

第16关:单词个数

任务描述
本关任务:输入一个英文句子,以回车符结束,单词间以空格分隔,标点符号后跟至少一个空格,统计并输出单词的个数(仅统计单词,数字按单词计,不计算标点符号,重复单词出现几次就统计几次)。

编程要求
输入:一个英文句子
输出:单词个数

测试说明
平台会对你编写的代码进行测试:

测试输入:

Life is short, you need Python!

预期输出:

6

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/134913973a = input().split(' ')print(len(a))

点击全文阅读


本文链接:http://zhangshiyu.com/post/99825.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1