从键盘输入一串字符,并以‘*’结束。将其中的小写字母全部转换为大写字母,大写字母全部转换成小写字母,然后输出到c盘上文件“file.txt”中保存。
时间: 2023-04-30 22:05:01 浏览: 119
题目要求从键盘输入一个字符串,并以“*”结尾。将其中的小写字母全部转换为大写字母,大写字母全部转换为小写字母,然后输出到C盘上的文件“file.txt”中保存。
解决方案:
1.从键盘输入一个字符串,并加上“*”结尾。
2.对字符串进行遍历,判断每个字符是否为字母,再判断字符是大写字母还是小写字母,进行相应的转换。
3.把转换后的字符串保存到C盘上的“file.txt”中。
代码如下:
```python
# -*- coding: utf-8 -*-
# 从键盘输入一个字符串,并加上“*”结尾
s = input("请输入一串字符:") + "*"
# 对字符串进行遍历,判断每个字符是否为字母,再判断字符是大写字母还是小写字母,进行相应的转换
new_s = ""
for c in s:
if c.isalpha(): # 判断是否为字母
if c.isupper(): # 判断是否为大写字母
new_s += c.lower() # 转换为小写字母
else:
new_s += c.upper() # 转换为大写字母
else:
new_s += c
# 把转换后的字符串保存到C盘上的“file.txt”中
with open("C:\\file.txt", "w") as f:
f.write(new_s)
```
相关问题
从键盘输入一个字符串 将其中的小写字母全部转换成大写字母
这是一个Python的字节串(bytes),需要使用decode()方法将其转化成字符串,然后再处理。例如:
```python
s = b'\xe4\xbb\x8e\xe9\x94\xae\xe7\x9b\x98\xe8\xbe\x93\xe5\x85\xa5\xe4\xb8\x80\xe4\xb8\xaa\xe5\xad\x97\xe7\xac\xa6\xe4\xb8\xb2 \xe5\xb0\x86\xe5\x85\xb6\xe4\xb8\xad\xe7\x9a\x84\xe5\xb0\x8f\xe5\x86\x99\xe5\xad\x97\xe6\xaf\x8d\xe5\x85\xa8\xe9\x83\xa8\xe8\xbd\xac\xe6\x8d\xa2\xe6\x88\x90\xe5\xa4\xa7\xe5\x86\x99\xe5\xad\x97\xe6\xaf\x8d'
s = s.decode('utf-8') # 将bytes转化成字符串
new_s = s.lower() # 将字符串中的小写字母全部转化成大写字母
print(new_s)
```
输出为:
> 从键盘输入一个字符串 将其中的小写字母全部转换成大写字母
c++从键盘输入一个字符串,将小写字母全部转换成大写字母
可以使用c++中的标准库函数toupper()将小写字母转换成大写字母。下面是一个示例代码:
```c++
#include <iostream>
#include <string>
#include <locale>
int main() {
std::string str;
std::getline(std::cin, str); // 从键盘输入字符串
std::locale loc;
for (std::string::size_type i = 0; i < str.length(); i++) {
str[i] = std::toupper(str[i], loc); // 将小写字母转换成大写字母
}
std::cout << str << std::endl; // 输出转换后的字符串
return 0;
}
```
在上面的代码中,我们首先使用std::getline()函数从键盘输入一个字符串,然后使用std::locale()构造一个本地化对象,用于处理不同语言环境下的字符转换。接着使用for循环遍历字符串中的每个字符,调用std::toupper()函数将小写字母转换成大写字母,最后输出转换后的字符串。