如何在python中将句子转换为字符串数组(list),而不使用split或任何花哨的函数



我想将句子转换为字符串数组

输入:我是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']

最新更新