函数用于定义元组时防止嵌套
Prevent nesting when function used to define tuple
我正在尝试定义一个元组,但我想进入元组的部分内容将是函数的输出。此输出最终被嵌套,这是我不想要的。
def do_thingy():
# Example of a fucntion that does things
return(["c", "d"],["e","f"])
my_tuple = (["a", "b"], do_thingy())
print(my_tuple)
# Returns: (['a', 'b'], (['c', 'd'], ['e', 'f']))
# I want: (['a', 'b'], ['c', 'd'], ['e', 'f'])
我尝试了很多拼图游戏,但都没有得到我想要的结果。例如:
def do_thingy():
return[["c", "d"],["e","f"]]
my_tuple = tuple([["a", "b"] + do_thingy()])
print(my_tuple)
出于各种原因,我试图将其保留在一行中。至少不是因为我正在重写此脚本以使其更具可读性和易于修改。如果那不可能,我想我可以将解决方案放在一个函数中。
为了完整性,我将在此处输入我的评论作为答案:
def do_thingy():
return (["c", "d"],["e","f"])
my_tuple = (["a", "b"], *do_thingy())
print(my_tuple)
我相信“*”是 unpacking operator。
输出:
(['a', 'b'], ['c', 'd'], ['e', 'f'])
我正在尝试定义一个元组,但我想进入元组的部分内容将是函数的输出。此输出最终被嵌套,这是我不想要的。
def do_thingy():
# Example of a fucntion that does things
return(["c", "d"],["e","f"])
my_tuple = (["a", "b"], do_thingy())
print(my_tuple)
# Returns: (['a', 'b'], (['c', 'd'], ['e', 'f']))
# I want: (['a', 'b'], ['c', 'd'], ['e', 'f'])
我尝试了很多拼图游戏,但都没有得到我想要的结果。例如:
def do_thingy():
return[["c", "d"],["e","f"]]
my_tuple = tuple([["a", "b"] + do_thingy()])
print(my_tuple)
出于各种原因,我试图将其保留在一行中。至少不是因为我正在重写此脚本以使其更具可读性和易于修改。如果那不可能,我想我可以将解决方案放在一个函数中。
为了完整性,我将在此处输入我的评论作为答案:
def do_thingy():
return (["c", "d"],["e","f"])
my_tuple = (["a", "b"], *do_thingy())
print(my_tuple)
我相信“*”是 unpacking operator。
输出:
(['a', 'b'], ['c', 'd'], ['e', 'f'])