[英]Appending letters to a list in a while loop
我正在尝试将句子的第一个单词附加到一个空列表中。 当前代码如下:
sentence = input("Enter sentence: ")
subject = []
print (subject)
x = 0
while True:
letter = sentence[x]
if letter != " ":
print (letter)
subject.append(letter)
x = x + 1
print (subject)
它目前打印:
Enter sentence: Cherries are red fruit
[]
C
h
e
r
r
i
e
s
它似乎忽略了我将结果附加到空列表的尝试...请帮助!
你最好使用for
循环,它不容易出错:
sentence = input('Enter sentence: ')
subject = []
print(subject)
for letter in sentence:
if letter == ' ':
break
else:
print(letter)
subject.append(letter)
print(subject)
如果你想把一个句子分成单词,有一个str.split
方法,它可以在简单的情况下帮助你:
words = sentence.split()
first_word = words[0] if words else None
print(first_word)
为什么不使用split()
函数而不是一次附加一个字母:
sentence = input("Enter sentence: ")
split_sentence = sentence.split(" ")
subject = []
subject.append(split_sentence[0])
print (subject)
或者更简单:
sentence = input("Enter sentence: ").split(" ")
subject = []
subject.append(sentence[0])
print (subject)
或者即使您只想要一个输入,您也不必附加
sentence = input("Enter sentence: ").split(" ")
subject = sentence[0]
print (subject)
split()
,拆分由参数定义的字符串并返回一个列表。
使用 while 循环:
sentence='Nice weather outside'
subject = []
x = 0
while x < len(sentence):
letter = sentence[x]
subject.append(letter)
x = x + 1
print(subject)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.