Pythonで添字0ではなく添字1で配列を開始するにはどうすればよいですか?
基本的に、Pythonでこの問題を解決します。
本当にこれを行いたい場合は、リストをラップするクラスを作成し、__getitem__
と__setitem__
を 1 ベースにすることができます。例えば:
def __getitem__(self, index):
return self.list[index-1]
def __setitem__(self, index, value):
self.list[index-1] = value
ただし、Python リストの柔軟性を完全に引き出すには、スライス、削除などのサポートを実装する必要があります。一度に 1 項目ずつリストを簡単に表示したい場合は、これで十分です。 '
シーケンスまたはマッピングのように機能するカスタム クラスの作成の詳細については、Data Model の Python ドキュメントを参照してください。
enumerate() メソッドを使用できます
a = ['a', 'c', 'v', 's']
for i,v in enumerate(a, 1):
print i, v
1 a
2 c
3 v
4 s
+1 に最大. あなたが試すことができる他の何かがあります:
None
リストのインデックス 0 にa を追加するだけです。これで機能が得られるはずです。None
リストを MATLAB に渡すときに先頭を切り取ることを忘れないでください。