我想将句子转换为字符串数组
输入:我是xyz
输出:["I"、"am"、"xyz"]
那么,你能告诉我我在哪里犯了合乎逻辑的错误吗?下面是我接受用户输入内容的代码
start =0
i=0
return_array = []
for i in (0, len(Input_Sentence)):
if " " == Input_Sentence[i:i+1]:
return_array.append(Input_Sentence[start:i+1])
start = i + 1
i += 1
return_array.append(Input_Sentence[start:i+1])
return_array.append(Input_Sentence)
以下是您更正的代码:
Input_Sentence = 'I am xyz'
start = 0
i = 0
return_array = []
for i in range(len(Input_Sentence)):
if " " == Input_Sentence[i:i + 1]:
return_array.append(Input_Sentence[start:i + 1])
start = i + 1
# i += 1
return_array.append(Input_Sentence[start:i + 1])
# return_array.append(Input_Sentence)
print return_array
您需要范围函数来执行for循环,直到长度为Input_Sentence
。此外,您不需要每次都递增i
。它会自动递增。不需要Input_Sentence
中的最后一个append
。
使用调试器和断点可以查看错误!:-)
有一个内置的函数:
input_= "I am xyz"
output_ = input_.split()
print(output_ )
输出:
[I','am','xyz']