问题描述
编写一个程序,输入一个字符串(长度不超过20),然后把这个字符串内的每一个字符进行大小写变换,即将大写字母变成小写,小写字母变成大写,然后把这个新的字符串输出。
输入格式:输入一个字符串,而且这个字符串当中只包含英文字母,不包含其他类型的字符,也没有空格。
输出格式:输出经过转换后的字符串。
输入输出样例
样例输入
AeDb
样例输出
aEdB
两种方法
将字母转换成ASCII码
需要先掌握的知识ASCll码
![](https://i-blog.csdnimg.cn/blog_migrate/c4ce45d07b77b63bbe986d23a6520dcd.png)
chr() :用一个范围在 range(256)内的(就是0~255)整数作参数,返回一个对应的字符。
ord() :函数是 chr() 函数(对于8位的ASCII字符串)或 unichr() 函数(对于Unicode对象)的配对函数,它以一个字符(长度为1的字符串)作为参数,返回对应的 ASCII 数值,或者 Unicode 数值,如果所给的 Unicode 字符超出了你的 Python 定义范围,则会引发一个 TypeError 的异常。
str = input()
l = ''
for i in str:
if 'a' <= i<='z':
l +=chr(ord(i)-32)
else:
l +=chr(ord(i)+32)
print(l)
用python的内置库
print(str.upper()) # 把所有字符中的小写字母转换成大写字母
print(str.lower()) # 把所有字符中的大写字母转换成小写字母
print(str.capitalize()) # 把第一个字母转化为大写字母,其余小写
print(str.title()) # 把每个单词的第一个字母转化为大写,其余小写
我们只需要对输入的每个元素进行一下判断,然后将小写字母转换为大写,大写字母转换为小写即可
str = input()
l = ""
for i in str:
if i==i.lower():
l += i.upper()
else:
l += i.lower()
print(l)