python for文:python学習メモ

どうも皆さんごきげんよう

365日後にペンテスターになるエンジニアです。

次の転職先でpythonlinuxを使うみたいなので、基礎の基礎から学習している段階です。

 

さて、今回はpythonのfor文。

 

Break=繰り返し処理を中止

For文の中で使うと、任意の場所で繰り返し処理が中断される

---------------------------------------------------------------------------------------

words = ["Englsih", "French", "Japanese"]

 

for w in words:

  print(w)

  

処理結果:

Englsih

French

Japanese

 

---------------------------------------------------------------------------------------

words = ["Englsih", "French", "Japanese"]

 

for w in words:

  print(w)

  break

 

処理結果:

Englsih

 

---------------------------------------------------------------------------------------

EnglishとFrenchを処理させたい場合はどうする?

→if文を使う

 

for w in words:

  print(w)

  if w == "French"

  break

 

これでいけるだろ!

しかし、そう、皆さんお気づきの通り….

 

  File "/Users/alex/Desktop/for/for.py", line 7

    if w == "French"

                    ^

SyntaxError: invalid syntax

 

あれ、なんでだ?、そうだ!int型とかstr型とかあったよな??

そのせいじゃない?

いや、違うっぽいな。なんとなく違うことが勘でわかる。。

文字列と数値だとやり方が違うのか?(参考にしてた例文は数値を処理していた)

 

for num in range(100):

  print(num)

  if num == 50

  break

 

これでどうだ!!....

  File "/Users/alex/Desktop/for/for.py", line 9

    if num == 

                     ^

SyntaxError: invalid syntax

 

って、なんでだ。

何が違う?

あ、なんか閃いた気がする。そもそもエラーの場所をよくわからん記号でvs codeが教えてくれてる。

~こんな感じの赤色で。

 

for w in words:

  print(w)

  if w == "French":

  break

 

これでいけるだろ:)

……

 

  File "/Users/alex/Desktop/for/for.py", line 8

    break

    ^

IndentationError: expected an indented block

 

何っ?!

いや、答えはもうすぐそこだ。今度こそわかったぞ。

for w in words:

  print(w)

  if w == "French":

    break

 

……

処理結果:

Englsih

French

 

!!!!!!

気持ち良い〜〜!!

Googleに頼らないで気付けたから倍気持ち良い!!

 

エラーの問題は解決できて何より。

次回へ続く。