[英]Adding Characters to an Empty String in Python
我试图让我的程序遍历用户输入的字符串并再次打印它,用“u”代替每个大写字母,用“l”代替每个小写字母,用“-”代替任何其他字符。 这是我写的:
txt = input()
modified_txt = ""
for char in txt:
if char.isupper():
modified_txt + "u"
elif char.islower():
modified_txt + "l"
else:
modified_txt + "-"
print(modified_txt)
出于某种原因,我的输出是一个空白行,好像变量“modified_txt”从未受到 for 循环的影响。 我敢肯定,为什么会出现这种情况有一个直接的原因,但我不知所措。
字符串是不可变的数据类型。 所以+
不是字符串的就地操作。
您需要使用新值重新分配变量。 所以换行:
modified_txt + SOMETHING
至
modified_txt = modified_txt + SOMETHING
或正如Matiiss
建议的那样:
modified_txt += SOMETHING
也许您需要在=
之前添加+
字符
txt = input()
modified_txt = ""
for char in txt:
if char.isupper():
modified_txt += "u"
elif char.islower():
modified_txt += "l"
else:
modified_txt += "-"
print(modified_txt)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.