2016-08-16 23 views
0

私は問題を解決しようとしており、できません。ですから、問題はPythonで関数があることです。私は3つの症例があり、これらの症例のために機能が一般的になりたい。だから、私の関数は一定であり、他方は可変である、私は、このコード例でより詳細にこれを説明このa = [a1, a2, a3]ような配列である引数を必要とし、配列の要素のそれぞれの場合2:特定の配列位置に変数を置くPython

# I have my function: 

def example(r,a): 
    # r is an array. Inside this function I have a for loop 
    for i in xrange(len(r)): 
     #inside this loop is where I have the 3 cases: 
     a = [r[z], a[1], a[2]] 
     a = [a[0], r[z], a[2]]  
     a = [a[0], a[1], r[z]] 
    (rest of the code) 
    ... 

だから私はaを宣言する方法を見つけたいのですが、私の関数はどこに変数を置くべきかを知っています。r[z]私はそれが文章であればそれを行うことが可能だと知っていますが、私は1行の解決法を探しています。変数a [z]は配列aの与えられた位置にあります。または私は効率的な方法が評価されているか分からない。

ありがとうございます。

よろしく

+0

'.insert()'または 'a [:i] + [item] + a [i:]'を使用します。 –

答えて

0

使用insert()指定された位置の前に要素を挿入します。

arr = ['A','B','C'] 
arr.insert(0,'D') 
arr becomes ['D','A','B','C'] 

例えば

、 'D' が前に挿入されているため、 'D' は

arr = ['A','B','C'] 
arr.insert(4,'D') 
arr becomes ['A','B','C','D'] 

ため、インデックス今0

の要素の前に挿入されているので要素はインデックス4にあります(これは配列の最後を超えて1です)。

オリジナルの答え:Inserting values into specific locations in a list in Python

+0

Mmmはい、これは私の問題を解決しません。与えられた位置の変数。つまり、配列の内部に変数を挿入する場所の情報を関数に提供したいということです。何かのように: a = ['inserthere'、a2、a3] この関数は変数を 'inserthere'の場所に挿入します –

+0

あなたはその位置をinsert()に渡すので、 – Raskayu

0

それを行うためのIの道を私が発見した:

#if I define a as: 

a = [a1, True, a3] 

# I can use 

np.place(a, a==True, r[z]) 

このようにして、[i]がrで真=値を置き換えます[Z]

関連する問題