2017-08-29 2 views
0

私がここで間違っていることを理解する助けを得ることができますか?私はリストのリストを持っており、特定のリストの特定のインデックスに文字列を挿入する必要があります。たとえば、この例のリストに:リストに挿入する - エラー "'str'オブジェクトは整数として解釈できません"

List = [['a', 1, 'letter'], ['b', 2], ['zero', 3, 'number']] 

私はその一覧が表示されますので、番号2の後に、第二のリストに「手紙」を挿入する:

List = [['a', 1, 'letter'], ['b', 2, 'letter'], ['zero', 3, 'number']] 

私は次のことを試してみました:

 
TypeError: 'str' object cannot be interpreted as an integer 
:複雑なプログラムで

List = [['a', 1, 'letter'], ['b', 2], ['zero', 3, 'number']] 
for i in len(List): 
    List.insert([1][2], 'letter') 
print(List) 

は、私が働いている、私はこのエラーが発生します

答えて

2

2番目のリストにのみ追加する場合は、なぜforループを使用していますか?

List[1].append('letter')とすれば簡単です。

ところで、これが実行している実際のコードであることを確認してください。別のエラー(TypeError: 'int' object is not iterable)が表示されます。

0

あなたは内側のリストにアクセスするには添字演算子([])を使用し、それにinsertを呼び出すことができます。

>>> lst = [['a', 1, 'letter'], ['b', 2], ['zero', 3, 'number']] 
>>> lst[1].insert(2, 'letter') 
>>> lst 
[['a', 1, 'letter'], ['b', 2, 'letter'], ['zero', 3, 'number']] 
関連する問題