str_=raw_input('Enter:')
for i,k in enumerate(str_):
if str_[i] != str_[i].upper():
v=str(str_[i].upper())
print v,
else:
c= str(str_[i].lower())
print c,
此代码有助于交换案例我的输出是正确的,但我在中间得到空格我尝试了所有可能的方法来删除空格,如re.sub,strip(\ n),删除('& #39;,'')我的输出仍然是这样的
>>>Enter:juNgLe
J U n G l E
我想要我的输出:JUnGlE
答案 0 :(得分:1)
您可以轻松地从python3导入打印功能,这比python 2x的打印声明更好
from __future__ import print_function
str_=raw_input('Enter:')
for i,k in enumerate(str_):
if str_[i] != str_[i].upper():
v=str(str_[i].upper())
print(v, end='')
else:
c= str(str_[i].lower())
print(c, end='')
答案 1 :(得分:1)
str_=raw_input('Enter:')
response="";
for i,k in enumerate(str_):
if str_[i] != str_[i].upper():
v=str(str_[i].upper())
response=response+v
else:
c= str(str_[i].lower())
response=response+c
print response
尝试将所有字母添加到新字符串变量中,然后打印该新变量
答案 2 :(得分:1)
对于此解决方案,您需要使用Python 3
中的打印件。这应该有效:
from __future__ import print_function
str_=raw_input('Enter:')
for i,k in enumerate(str_):
if str_[i] != str_[i].upper():
v=str(str_[i].upper())
print(v, end="")
else:
c= str(str_[i].lower())
print(c, end="")
答案 3 :(得分:0)
使用sys.stdout.write(c)
代替print
。见this
答案 4 :(得分:0)
您可以使用函数swapcase()
来完成您想要的任务:
name = "ss A"
print name.swapcase().replace(" ","")
>>> "SSa"
答案 5 :(得分:0)
不要在字符串上循环。
str_=raw_input('Enter:')
str_.replace(" ","").swapcase()
{@ 1}} 方法不会被弃用,也不会被弃用。