假设我有一个字符串列表:
myList = ['apple','banana','orange']
和另一个字符串保存到单个变量中:
myVariable = 'fudge'
我想给myList
中的每个元素加上后缀_df2
,还有myVariable
。因此,我希望我的结果看起来像这样:
>> myList
['apple_df2', 'banana_df2', 'orange_df2']
>> myVariable
'fudge_df2'
目前我正在实现以下代码:
myList = [fruit + '_df2' for fruit in myList]
myVariable = myVariable + '_df2'
我想知道,然而,由于我两次都添加了相同的后缀,是否有一种方法可以将这两个步骤合并为一个?
创建一个以单例项为首的单个列表,普遍应用此修改,然后以相同的顺序解包。
myVariable, *myList = [x + '_df2' for x in [myVariable, *myList]]
我可能还是更喜欢两行解决方案。你不是只是将相同的值附加到每个元素;您还需要保留原始列表的列表结构。
你可以这样做,但正如@YevhenKuzmovych所说,这不是一个好的解决方案。
myList, myVariable = [fruit + '_df2' for fruit in myList], myVariable + '_df2'