1. ホーム
  2. python

[解決済み] Pythonです。if-endif-statementはどこで終わるのか?

2022-03-04 17:39:05

質問

次のようなコードがあります。

for i in range(0,numClass):
    if breaks[i] == 0:
        classStart = 0
    else:
        classStart = dataList.index(breaks[i])
        classStart += 1
classEnd = dataList.index(breaks[i+1])

classList = dataList[classStart:classEnd+1]

classMean = sum(classList)/len(classList)
print classMean
preSDCM = 0.0
for j in range(0,len(classList)):
    sqDev2 = (classList[j] - classMean)**2
    preSDCM += sqDev2

SDCM += preSDCM
return (SDAM - SDCM)/SDAM

このコードをVB.NETに変換したいのですが。

しかし、if-elseif-statementがどこで終わるのかがわかりません。 それは"classStart += 1"の後で終わるのでしょうか?

Pythonではfor-next-loopもどこで終わるのか、ちょっとわかりにくい気がします。

このコードは、以下のサイトから引用しています。 http://danieljlewis.org/files/2010/06/Jenks.pdf

ありがとうございました。

解決方法は?

そうです。Pythonはブロックをマークするためにインデントを使用します。両方の iffor がそこで終了します。