【发布时间】:2020-03-09 23:05:30
【问题描述】:
我试图弄清楚为什么输出会抓取列表中每个项目的第一个字母,而不是只抓取第一个元素(水牛翅膀)?这是我的代码的样子。
faveFoods = ['buffalo wings' , 'menudo' , 'mashed potatoes' , 'man and cheese']
for food in faveFoods:
print('I love', food[0], 'because they are spicy')
这个输出:
I love b because it is spicy
I love m because it is spicy
I love m because it is spicy
I love m because it is spicy
【问题讨论】:
-
如果您在循环中打印
food(在单独的行中),您会明白为什么它只打印第一个字母。 (剧透:因为您要求 Python 这样做。) -
到底是什么问题?你做过调试吗?我强烈建议阅读以下文章:ericlippert.com/2014/03/05/how-to-debug-small-programs.
-
@AMC 我在下面用一个输出我正在寻找的代码的代码回答了我的问题,但是,它不是他们正在寻找的方式。我会看看你的链接。谢谢!
-
@GabeStrenk 你说的不是他们想要的方式是什么意思?
-
我正在关注的课程计划是在 next.tech 上,他们有一个他们正在寻找的特定代码模式。 faveFoods\s*=\s*[([\'|\"][A-Z,a-z]*[\'|\"],\s*)*[\'|\"][A-Z,a-z]*[ \'|\"]](\n| )*for\sfood\sin\s*faveFoods:\n*( \n|\t)*( |\t)print( [\'|\"][A-Z,a-z,\'\"\,\!\?\!\@\$\%\&\>1-9]*)
标签: python arrays array-splice