Python 我可以在理解列表中同时获得两个值吗?
我可以有一个列表,它可以同时获得一个理解列表吗Python 我可以在理解列表中同时获得两个值吗?,python,pandas,Python,Pandas,我可以有一个列表,它可以同时获得一个理解列表吗 default\u list=[y,z代表df\u acc[['acc\u number','password','server']]中的x,y,z。如果x==default\u acc] 上面的代码给了我一个语法错误。正确的答案应该是什么?您可以,但您需要嵌套的: >>> default_list = [elem for x,y,z in df_acc[['acc_number', 'password', 'server']].
default\u list=[y,z代表df\u acc[['acc\u number','password','server']]中的x,y,z。如果x==default\u acc]
上面的代码给了我一个语法错误。正确的答案应该是什么?您可以,但您需要嵌套的
:
>>> default_list = [elem for x,y,z in df_acc[['acc_number', 'password', 'server']].values
for elem in (x, y) if x == default_acc]
但如果是数据帧,则执行以下操作会更有效:
>>> df_acc.loc[df['acc_number'].eq(default_acc), ['acc_number', 'password']].stack().tolist()
如果您特别想要列表理解
,那么可以使用itertools.chain.from\u iterable
>>> from itertools import chain
>>> list(chain.from_iterable((y,z)
for x,y,z in df_acc[['acc_number', 'password', 'server']].values
if x == default_acc))
此外,如果您使用的是熊猫版本0.24.0+,当从<代码>数据文件> /COD>转换为<代码> NoMPy < /Case>数组时,考虑转换为与“<代码>熊猫”<代码>推荐,如可以看到的和
,但是对于:您需要嵌套<代码>:
>>> default_list = [elem for x,y,z in df_acc[['acc_number', 'password', 'server']].values
for elem in (x, y) if x == default_acc]
但如果是数据帧,则执行以下操作会更有效:
>>> df_acc.loc[df['acc_number'].eq(default_acc), ['acc_number', 'password']].stack().tolist()
如果您特别想要列表理解
,那么可以使用itertools.chain.from\u iterable
>>> from itertools import chain
>>> list(chain.from_iterable((y,z)
for x,y,z in df_acc[['acc_number', 'password', 'server']].values
if x == default_acc))
此外,如果您使用的是熊猫版本0.24.0+,当从“代码>数据代码> <代码> NoMPy < /代码>数组时,考虑切换到与“<代码>熊猫”<代码>推荐,如可以看到的和
可能<代码> [y,z ]为x,y,z in…/c> >是你想要的吗?这是有效的,但是给我<代码> [y,z ]。
你有一个例子吗?也许你想要的是x,y,z中的[[y,z]。
是这样吗?这很有效,但给了我[[y,z]]
你有例子吗?你的第二个解决方案很完美。我更喜欢效率,尽管学习理解解决方案也很棒。你的第二个解决方案很完美。我更喜欢效率,尽管学习理解解决方案也很棒。