我的代码
beginning = input("What would you like to acronymize? : ")
second = beginning.upper()
third = second.split()
fourth = "".join(third[0])
print(fourth)
我好像弄不清我错过了什么。代码应该是用户输入的短语,全部大写,拆分成单词,将每个单词的第一个字符连接在一起,然后打印出来。我觉得某个地方应该有一个循环,但我不完全确定这个循环是对的还是放在哪里。
Tags:
对我来说是这样的:
当您运行代码
third[0]
时,Python将为变量third
编制索引并给出它的第一部分。.split()
的结果是字符串列表。因此,third[0]
是一个字符串,第一个单词(全部大写)。你需要某种循环来得到每个单词的第一个字母,否则你可以用正则表达式来做一些事情。我建议循环。
试试这个:
在对
.join()
的调用中有一个小的for
循环。Python称之为“生成器表达式”。变量word
将依次设置为third
中的每个单词,然后word[0]
将获得所需的字符。说输入是“联邦机构局”
键入
third[0]
将得到split的第一个元素,即“Federal”。您需要精灵中每个元素的第一个元素。使用生成器理解或列表理解将[0]
应用于列表中的每个项:在Python中,在这里使用显式循环是不习惯的。生成器理解更短,更易于阅读,不需要使用显式累加器变量。
相关问题 更多 >
编程相关推荐