如何追加到列数超过2列的列表

时间:2017-11-02 12:53:21

标签: python list append

我正在创建一个程序,我必须逐个扫描2列。我无法附加有两列的列表。 例如:

    >>> list1[['a1', 'a2', 'a3'], ['b1', 'b2', 'b3'], ['c1', 'c2', 'c3']]
    >>> list1[0][2]
    ... 'a3'
    >>> list1[0][2]+="Ratan"
    >>> list1[0][2]
    ... 'a3Ratan'
    >>> list2 = [["Ratan",[]],["Kanchan",[]]]
    >>> list2
    ... [['Ratan', []], ['Kanchan', []]]
    >>> list2[0][1]+=" Bhushan"
    >>> list2[0][1]
    ... [' ', 'B', 'h', 'u', 's', 'h', 'a', 'n']
    >>> list2
    ... [['Ratan', [' ', 'B', 'h', 'u', 's', 'h', 'a', 'n']],['Kanchan',[]]]
    >>> list2[0][1]+=' Bhushan'
    >>> list2
    ... [['Ratan', [' ', 'B', 'h', 'u', 's', 'h', 'a', 'n', ' ', 'B', 'h', 'u', 's', 'h', 'a', 'n']], ['Kanchan', []]]
    >>> list2[0][1]+=str(' Bhushan')
    >>> list2[0][1]
    ... [' ', 'B', 'h', 'u', 's', 'h', 'a', 'n', ' ', 'B', 'h', 'u', 's', 'h', 'a', 'n', ' ', 'B', 'h', 'u', 's', 'h', 'a', 'n']

我不明白为什么字符串连接不起作用。

请帮忙。

1 个答案:

答案 0 :(得分:2)

list1[0][2]是一个字符串,list2[0][1]是一个列表。不同之处在于它们如何处理+=运算符:

a = 'b'
a += 'bcd'  # appends 
# 'abcd'

a = ['a']
a += 'bcd'  # extends the list by the iterable (string is iterable!)
# ['a', 'b', 'c', 'd']

如果要将元素附加到列表,请使用append

a.append('bcd')
# ['a', 'bcd']