Python我的字符串变量赢得';不能加成一个字符串
我似乎在添加字符串时遇到问题。Python我的字符串变量赢得';不能加成一个字符串,python,string,variables,add,Python,String,Variables,Add,我似乎在添加字符串时遇到问题。 我编写了一个函数,不断调用该函数对字符串进行解码或编码。 问题是当我打印结果时,它只打印一个字符,而不是整个代码。 在函数之外,此方法通过一个字母接一个字母来工作。 这里我使用数字。 def code(s,i): result = "" if i < len(s): if s[i] == '0': result += "3" print (result) code(s,i+1) if s[i] ==
我编写了一个函数,不断调用该函数对字符串进行解码或编码。
问题是当我打印结果时,它只打印一个字符,而不是整个代码。
在函数之外,此方法通过一个字母接一个字母来工作。
这里我使用数字。
def code(s,i):
result = ""
if i < len(s):
if s[i] == '0':
result += "3"
print (result)
code(s,i+1)
if s[i] == '1':
result += "4"
print (result)
code(s,i+1)
else:
print ("An Error seems to have occured.")
else:
print("Code is done.")
return
def代码(s,i):
result=“”
如果我
例如,如果我输入:01我希望结果是:3
34
但它只打印:3
4
因此,基本上,重放后的结果会删除/覆盖之前字符串中的内容
我想打印一个字符串,而不是一行接一行地打印结果。
这只是我代码的一部分。为什么结果不加起来?
这就是我定义输入的方式。
entered=input(“请键入内容”)
实际上,您的代码是正确的,但只有一个问题,即在传递第一个嵌套的if子句后,代码进一步进入下一个嵌套的else子句
要停止此操作,必须返回程序
您应该这样编写代码
def code(s,i):
result = ""
if i < len(s):
if s[i] == '0':
result += "3"
print (result)
code(s,i+1)
return
if s[i] == '1':
result += "4"
print (result)
code(s,i+1)
return
else:
print ("An Error seems to have occured.")
else:
print("Code is done.")
return
def代码(s,i):
result=“”
如果我
我找到了解决问题的方法。每次我调用函数时,它都会重置我的代码,所以我将结果作为 my函数的参数:
def code(s,i,result):
if i < len(s):
if s[i] == '0':
result += "3"
print (result)
code(s,i+1,result)
return
if s[i] == '1':
result += "4"
print (result)
code(s,i+1,result)
return
else:
print ("An Error seems to have occured.")
else:
print("Code is done.")
return
def代码(s、i、结果):
如果我
现在结果打印出我需要的,谢谢你的帮助^^ 这个代码应该做什么?你期望你看不到的行为是什么?你的问题很难理解,你想实现什么,即s和i的价值观是什么?你得到了什么输出?你期望得到什么结果?请回答您的问题并添加一些详细信息。谢谢,这已经消除了错误信息。