私が書いたコードは、xlookforを9に設定したときを除いて、すべての値に対して機能し、インデックスエラーを生成します。私はインデックスの境界(カウンタを0に変更する)と他のいくつかのものを変更することに戸惑ってしまったが、同じエラーで終わった。私はこれが単純なインデックス修正であることを知っていますが、わかりません。どんな助けもありがとう。forループ内のPython配列のインデックス
firstlist = [1, 3, 5, 6, 7, 8, 9]
secondlist = [9, 3, 1, 8, 6, 9, 2]
valuetolookfor = 6
b = 0
e = 0
s = 0
counter = 1
for i in firstlist:
counter += 1
if i <= valuetolookfor:
s = i-1
b = firstlist[counter]
if b >= valuetolookfor:
e = i
break
インデントを修正する必要があります。ひどくインデントされたPythonコードはナンセンスです。 – khelwood
インデントに同意します。あなたの問題は、Python配列が要素0で始まるので、 'counter = 1'で始まると思います。私は' counter = 0'はあなたが始めるべき場所だと思います。あなたは配列の最初の要素をスキップしているので、そこに '9'を見つけることはできません:) – RobertB
ありがとう皆さんのコメント。私はSolaxunによって与えられた助言を介して動作するようになった。すぐに投稿を更新します。 – user2845180