だから、基本的に私はこのコードが時々動作する理由を知りたがっています...時にはうまく動作し、インデックスエラーを引き起こすこともあります。私は4x100のデータを持つ二次元のリストを持っています。 3つ目の行からデータを取得するだけで、1つの変数ですべてを合計します。ここでインデックスエラー:範囲外のリストインデックスは、時々発生する
はリストである:
a=4
lst = [[] for _ in xrange(a)]
wifi= Wireless('wlan0')
while i<100:
results = wifi.scan()
print cont
print "%-8.16s Scan completed :" % (wifi.ifname,)
for ap in results:
if ap.bssid==AP1:
lst[0].append(ap.quality.getSignallevel())
if ap.bssid==AP2:
lst[1].append(ap.quality.getSignallevel())
if ap.bssid==AP3:
lst[2].append(ap.quality.getSignallevel())
if ap.bssid==AP4:
lst[3].append(ap.quality.getSignallevel())
i=i+1
cont=cont+1
for j4 in range(0,100):
num7=num7+lst[3][j4]
私にあなたの 'lst'オブジェクトの例を提供してください。失敗した場合は –
となります。' lst'とは何ですか?その内容はおそらくあなたの犯人です。 – Signal
インデックスが0から始まるので、実際には4行目からデータを取得しています。 'lst'は正確に4x100ですか? 'len(lst)== 100'と' all(len(c)== 4で最初はc)== True'ですか? – Ben