2017-02-27 11 views
1

私は配列にインポートしたいファイルがありますが、各エントリをインデックスとして持っていますので、それぞれ特定のものを呼び出すことができます。Python:インデックス付きのファイルから配列をインポート

ファイル(testing_array.txt):

["zero", "one", "two", "three", "four", "five"] 

スクリプト:

f = open('testing_array.txt').read() 
array = [f] 
print (array[0]) 
print (array[1]) 

出力:私はforループ失敗した.insertごとに、各エントリにしようとした

["zero", "one", "two", "three", "four", "five"] 
Traceback (most recent call last): 
    File "testing_array.py", line 4, in <module> 
    print (array[1]) 
IndexError: list index out of range 

インデックス。 3日前にPythonスクリプトを作成し始めたので、何か基本的なものを見落としていると謝ります。どんな助けでも感謝します、ありがとう。

+0

あなたは 'eval()'を探しているようですね。プロダクションコードで 'eval()'を使わない*。非常に危険で、特にファイルのような信頼できない入力の場合は特にそうです。 – kichik

+0

'array = [f]'の後に 'array = array [0]'を追加して、それが –

+0

@LeonZ。を動作させるかどうかを教えてください。それはおそらく '' [''と '' "'"それらはファイル内の最初と2番目の文字です – Kevin

答えて

3

リストと同じ構文です。

+0

Jeezもうまくいきました。本当に簡単でした。 –

2

また、角カッコを削除してリストに分割することもできます。

>>> line = '["zero", "one", "two", "three", "four", "five"]' 
>>> line.strip("[]").split(",") 
['"zero"', ' "one"', ' "two"', ' "three"', ' "four"', ' "five"'] 
関連する問題