見出し画像

職業訓練「Python」第2回(未経験ニート6カ月間の挑戦)

このnoteは都内住み25歳、2019年11月にベンチャー企業をやめて、コンテンツビジネスを始めるも軌道に乗らず、年間80万のコンサルを受けるも何だかんだで返金交渉を行い、Twitterアフィリエイトで月13,600円を稼ぎ出すも15アカウント凍結された結果、失業給付を受けることを決意し、そのお金で投資をしながら、ついには職業訓練(Python)に通いはじめた未経験ニートの軌道である。

毎日、更新するのでフォローお願いします✨
Twitterはコチラ


こんにちは、TKです。

最近、やっと6:30起きに慣れてきました。
職業訓練は9:15から始まるので、

~6:30起床
~6:40Twitter&チャートチェック
~6:50Youtube流しながら筋トレ
~7:00シャワー
~7:30料理&朝食
~7:50出発

こんなルーティンを送っています。

朝食は10個入りのたまご×ハム×白米で3食分のチャーハンを一気に作ります。または、炊飯器に鯖缶とめんつゆを突っ込んでカンタンな炊き込みご飯が多いですね✨

とにかく、「時短」かつ「コスパ」が最強です!

さて

第3回目は

【インデクス】
【スライス】
【問題】
【答え】

【インデクス】

インデクスは、「指定した位置にある文字を取り出す」ことができます。
a='abc'
a[1]

b

となります。


つまり、「abc」はそれぞれ「012」という数え方をします。

ちなみに逆から取り出すこともできて…

a='abc'
a[-1]

C

となります。


つまり、逆の場合はabcはそれぞれ「-3-2-1」と数えます。


数え方が違うので注意が必要ですね💦


エラー①

a='123'
print(a[0])
a[0]=あ


Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'あ' is not defined

約:名前「あ」は定義されていません


これはa[0]を「あ」に代入しようとした式ですがエラーになります。


つまり、参照はできるけど代入はできない

エラー②

a=[4]
a='123'
print(a[4])


Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IndexError: string index out of range

約:文字列インデックスが範囲外です


4番目の数は存在しないのでエラーになります。

【スライス】

スライスは、「〇~〇文字目の文字を取り出す」ことができます。
(正確には”文字列[開始インデクス:終了インデクス-1]”を取り出す)

a='abc'
a[0:1]

a


a='abc'
a[1:2]

b


a = 'abc'
a[1:4]

bc

となります。


ちなみに最初から最後までをピッタリ取り出すには2つの方法があります。

a='123'に対して

・print(a[0:len(a)])
・print(a[0:])
・print(a[:3])

でもabcが取り出せます。
(lenは文字数を数えるので3という意味になります)


「下に行くほど省略してるんですね!」


また、

a='12345'に対して

print(a[0:5:2])

135

となります。


つまり、「2」というのは”自分を含めて進む数”です。
(なので、「1」なら全文字(12345)が返ってきます。)


a='abcdefg'に対して

print(a[0:7:1])
→abcdefg

print(a[0:7:2])
→aceg

print(a[:5:])
→abcde

print(a[0::2])
→aceg

print(a[0:7:])
→abcdefg


エラー①
print(a[0:7:0])

ValueError: slice step cannot be zero
約:スライスステップをゼロにすることはできません

【問題】


Q.1 「a='あいうえお'」の、「あいう」を取り出すには?
Q.2 「a='あいうえお'」の、「うえ」を取り出すには?
Q.3 「a='あいうえお'」の、「お」を取り出すには?
Q.4 「a='あいうえお'」の、「あうお」を取り出すには?



答え

Q.1→ print(a[0:3])・print(a[:3])・print(a[0:1+2])
Q.2→ print(a[2:4])
Q.3→ print(a[4:5])・print(a[4])・print(a[-1])・print(a[2:2+2])
Q.4→ print(a[0:5:2])


「インデクスとスライスを使えば色んな出し方があるんですね✨」


P.S

職業訓練が8/8~8/16までお盆休みに入ります。

職業訓練は8/17から始まりますが、noteの更新は続けます。

明日は「Python3エンジニア認定基礎試験」の勉強方法と戦略について書いていきますね✨


この記事が気に入ったらサポートをしてみませんか?