删除字符串之间的空格

时间:2016-07-16 18:50:36

标签: python python-2.7

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

6 个答案:

答案 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}} 方法不会被弃用,也不会被弃用。