当前位置:首页>python>【GESP】2026年06月Python三级 -- 字符转换

【GESP】2026年06月Python三级 -- 字符转换

  • 2026-09-18 18:28:35
【GESP】2026年06月Python三级 -- 字符转换

跟老马一起“升级打怪”学编程!

旨在为小朋友们提供全面的学习材料,共同为等级考试做好准备。

添加小助手微信,回复【GESP三级2026.06_字符转换】,获取本题源代码。

GESP三级2026.06_字符转换

【提交】

https://www.luogu.com.cn/problem/B4556

【问题描述】

小杨同学有一串字符,里面可能有:

  • 大写字母,比如 A、B、C
  • 小写字母,比如 a、b、c
  • 数字,比如 0、1、2

现在小杨同学想把这串字符变一变,规则如下:

  1. 如果是大写字母,就变成对应的小写字母;
  2. 如果是小写字母,就变成对应的大写字母;
  3. 如果是数字,就变成 *。

请你按照这个规则,帮小杨把整串字符转换好。

【输入描述】

输入一共有  行。第一行:一个整数,表示这串字符一共有多少个字符。第二行:一串连续的字符,中间没有空格。

【输出描述】

输出转换后的字符。

注意: 输出时字符之间不要加空格。

【样例输入1】

5aBc98

【样例输出1】

AbC**

【样例解释1】

原来的字符是:

aBc98

从左到右一个一个看:

  1. a 是小写字母,所以变成 A;
  2. B 是大写字母,所以变成 b;
  3. c 是小写字母,所以变成 C;
  4. 9 是数字,所以变成 *;
  5. 8 是数字,所以变成 *。

所以最后输出:

AbC**

【数据范围】

字符个数不会超过  个。

每个字符只会是大写字母、小写字母或数字。

参考程序:

'''[GESP202606 三级] 字符转换https://www.luogu.com.cn/problem/B4556'''n = int(input())s = input().strip()res = []for c in s:if c.isupper():        res.append(c.lower())elif c.islower():        res.append(c.upper())else:        res.append('*')print(''.join(res))

青少年编程竞赛交流

「青少年编程竞赛交流群」已成立(适合6至18周岁的青少年),添加小助手微信,让他邀请大家进入学习群。进群之后大家可以参与定期组织的 #21天刷题打卡、 #GESP编程能力测评、 #青少年编程等级考试、 #教育部白名单比赛辅导 以及 #青少年编程组队竞赛 等活动。

最新文章

随机文章