Python yield返回字符而不是单元素元组中的字符串

tim*_*mmy 2 python yield

我正在使用yield处理列表的每个元素.但是,如果元组只有一个字符串元素,则yield返回字符串的字符,而不是整个字符串:

self.commands = ("command1")
...
for command in self.commands:
        yield command            # returns 'c' not 'command1'
Run Code Online (Sandbox Code Playgroud)

我怎样才能解决这个问题?

谢谢

ken*_*ytm 6

只有1个元素的元组应该用尾随逗号书写.

self.commands = ("command1",)
Run Code Online (Sandbox Code Playgroud)

  • @timmy:如果能帮到你,接受答案是个好主意.继续,然后单击答案旁边的"刻度线"图标. (2认同)
  • @manoj,shahjapan - 如果你们有一点耐心,会很棒.我不能马上接受答案 (2认同)