相关疑难解决方法(0)

如何在Python中连接两个列表?

如何在Python中连接两个列表?

例:

listone = [1, 2, 3]
listtwo = [4, 5, 6]
Run Code Online (Sandbox Code Playgroud)

预期结果:

>>> joinedlist
[1, 2, 3, 4, 5, 6]
Run Code Online (Sandbox Code Playgroud)

python list concatenation

2250
推荐指数
26
解决办法
220万
查看次数

使用 list.append() 时出现意外结果。我究竟做错了什么?

我无法理解list.append()Python 中以下两个行为示例:

list_1 = ['A', 'B']
list_2 = ['C', 'D']

copy_l1 = list_1
copy_l1.append(list_2)
Run Code Online (Sandbox Code Playgroud)
  1. 例子

    print(copy_l1)
    
    Run Code Online (Sandbox Code Playgroud)

    结果:['A', 'B', ['C', 'D']]

    预期的:['A', 'B', 'C', 'D']

    道理我都懂,但是如何才能达到预期的效果呢?

  2. 例子

    print(list_1)
    
    Run Code Online (Sandbox Code Playgroud)

    结果:['A', 'B', ['C', 'D']]

    预期的:['A', 'B']

这是我最不解的。为什么copy_l1.append(list_2)还影响list_1?由于我的 C 背景,这在我看来就像我正在研究指针,但我认为情况不应该如此。什么意思?

python list

5
推荐指数
1
解决办法
277
查看次数

将对象附加到列表

我有一些将结果对象附加到列表的 python 代码。

objs = []
objs.append(results['Contents'])
Run Code Online (Sandbox Code Playgroud)

如果我打印results['Contents'],它看起来像这样:

[
   {
      "id": 1,
      "name", "joe"
   },
   {
      "id": 2,
      "name", "jane"
   },
   {
      "id": 3,
      "name", "john"
   }
]
Run Code Online (Sandbox Code Playgroud)

但是,当我打印时objs,它看起来像这样 - 正如您所看到的,它现在是列表中的一个列表:

[
   [
      {
         "id": 1,
         "name", "joe"
      },
      {
         "id": 2,
         "name", "jane"
      },
      {
         "id": 3,
         "name", "john"
      }
   ]
]
Run Code Online (Sandbox Code Playgroud)

这开始给我带来问题,因为我开始循环并附加更多对象(结构类似于results['Contents']),如下所示:

objs.append(l_objs['Contents'])
Run Code Online (Sandbox Code Playgroud)

当我最终得到这样的结果时:

[
   [
      {
         "id": 1,
         "name", "joe"
      },
      {
         "id": 2,
         "name", "jane"
      },
      {
         "id": 3,
         "name", …
Run Code Online (Sandbox Code Playgroud)

python

0
推荐指数
1
解决办法
61
查看次数

标签 统计

python ×3

list ×2

concatenation ×1