如何在不更改python中现有列表的情况下,通过向现有列表添加字符串来创建新列表?
我有一个列表和一个字符串,如下所示:如何在不更改python中现有列表的情况下,通过向现有列表添加字符串来创建新列表?,python,list,Python,List,我有一个列表和一个字符串,如下所示: demo_list = [ 'rishi', 'john', 'mohan', 'sony' ] demo_str = 'samsung' new_list = demo_list.append(demo_str) 我想通过将demo_str插入demo_列表而不修改demo_列表来创建一个新列表。我的预期产出是: new_list = [ 'rishi', 'john', 'mohan', 'sony', 'samsung' ] demo_list
demo_list = [ 'rishi', 'john', 'mohan', 'sony' ]
demo_str = 'samsung'
new_list = demo_list.append(demo_str)
我想通过将demo_str插入demo_列表而不修改demo_列表来创建一个新列表。我的预期产出是:
new_list = [ 'rishi', 'john', 'mohan', 'sony', 'samsung' ]
demo_list = [ 'rishi', 'john', 'mohan', 'sony' ]
请注意,demo_列表保持原样,并通过加入demo_列表和demo_str创建一个新的_列表。我可以使用“append”完成此操作,但在执行此操作时,demo_列表会被修改。我的尝试如下:
demo_list = [ 'rishi', 'john', 'mohan', 'sony' ]
demo_str = 'samsung'
new_list = demo_list.append(demo_str)
但是,它不起作用,因为append也不会返回任何内容,我不想修改演示列表。当您执行
new\u list=demo\u list
时,对象new_list
和demo_list
指向同一个列表,修改其中一个实际上意味着修改另一个,因为它们本质上是同一个对象
首先需要使用copy()
方法创建列表的副本,然后使用append
作为:
demo_list = [ 'rishi', 'john', 'mohan', 'sony' ]
new_list = demo_list.copy()
new_list.append('samsung')
print(new_list)
另外,当您执行
new\u list=demo\u list.append(demo\u str)
时,由于append()
工作到位,该方法的返回值是None
,因此new\u list
会被分配None
的值。下面是您可以执行此操作的方法
new_list = demo_list + [demo_str]