本記事について
とある事業会社で事業企画をやっています。
元々は、新規営業1年→エンプラ営業3年やっていました。
事業企画への異動に伴って、ルーチンワークの自動化やスクレイピングに興味を持ちpython学習をスタートしました。
目的達成までは記事を執筆予定です。どうぞよろしくお願いいたします。
開発環境
jupyterlab
使っている本
すっきりわかるpython入門
https://sukkiri.jp/books/sukkiri_python
勉強計画
週5日間ミニマム1h勉強する。
最初の1weekは1冊終わらせることをgoalに。
start@ 2022/2/21
学習時間
1.0h
学び
今日は繰り返しを学びたいと思います〜
繰り返しの基本構造(まずはwhileから)
羊が増えていく。
print("let's sleep")
count = 0
count += 1
print ( 'sheep is {}'.format(count))
count += 1
print ( 'sheep is {}'.format(count))
count += 1
print ( 'sheep is {}'.format(count))
print('good night')
#let's sleep
#sheep is 1
#sheep is 2
#sheep is 3
#good night
描き続けるのだるいから、楽にしましょう。
count = 0
while count <3:
count +=1
print('sheapi is {}'.format(count))
print('good night')
#sheapi is 1
#sheapi is 2
#sheapi is 3
#good night
whileブロックを指定し損ねると無限ループになる。
無限るーぷを止める方法は、jupyterLabでは、■ボタン押すと良い。
状態による繰り返し
is_awake= True
count = 0
while is_awake==True:
count+=1
print('sheap is {}'.format(count))
key = input('already sleepy? (y/n) >>')
if key == 'y':
is_awake == False
print('good night')
繰り返しによるリストの作成
count=0
student_num = int(input('学生の数は? >>'))
score_list = list() #空のリストを作成している
while count <student_num: #入力された学生の数より少なければ繰り返し
count += 1
score = int(input('{}一目の点数を入力 >>'.format(count)))
score_list.append(score) #入力された得点をリストに追加
print(score_list)
total = sum(score_list)
print('平均点は、{}点です'.format(total /student_num))
#学生の数は? >> 5
#1一目の点数を入力 >> 50
#2一目の点数を入力 >> 50
#3一目の点数を入力 >> 50
#4一目の点数を入力 >> 50
#5一目の点数を入力 >> 50
#[50, 50, 50, 50, 50]
#平均点は、50.0点です
この構文はよく使う。
カウンタ変数 = 0
while カウンタ変数 < len(リスト):
リスト[カウンタ変数]を使った処理
カウンタ変数 +=1
リストの全要素を繰り返し参照する
#リスト内の合否判定をしていく。
scores = [80,70,60,50,40]
count = 0
while count < len(scores):
if scores[count] >= 60:
print('passed')
else:
print('unpassed')
count += 1
passed
passed
passed
unpassed
unpassed
for文
for変数 in リスト:
繰り返し処理。
タプルやディクショナリ、セットでも使えます。
scores = [80,20,75,60]
for data in scores:
if data >60 :
print('passed')
else:
print('unpassed')
#passed
#unpassed
#passed
#unpassed
range関数は、0から指定した数より1小さい整数までの要素を持つ整数列を作れる。
例えば、range(3)だと、0,1,2という整数列を作れる。
for num in range(3):
print('python is fun')
#python is fun
#python is fun
#python is fun
繰り返しの制御
ages = [28,50,8,20,78,25,22,10,27,33]
num = 5
samples = list()
for data in ages:
if 20 <= data < 30 :
if len(samples) <num:
samples.append(data)
if len(samples) == num:
break #抽出数が目標に達したので、for文を終了。
print(samples)
#[28, 20, 25, 22, 27]
繰り返しのスキップ
ages = [28, 50, 8, 20, 78, 25, 22, 10, 27, 33, '秘密']
samples = list() #空のリストを作る
for data in ages:
if not isinstance(data, int): #文字列があった場合は、スキップ
continue
if data < 20 or data >= 30: #20歳より下、30より上の場合スキップ
continue
samples.append(data)
print(samples)
#[28, 20, 25, 22, 27]
continue文は、現在の回だけを中断し、次の回へ。
breake文は、繰り返し自体を中断する。
今日ミスったところ
if文の=を1つにしてしまったり、elseの:を忘れてしまったり・・・。
感想
気づけば4日目。業務が忙しくならないことを祈り続ける日々です。そして、基礎編は終わり次回からは色々と本格的になっていく模様です。
通常の業務は大体9:00~20:00で今は終えていますが、前の営業時代は8:00-22:00とかもザラだったのでより早く追えられるよう、日々の生産性を意識しながら準備をしていきます。
今日は、なんかプログラミングっぽくて楽しかったです。
早く業務で使えるようになりたいな〜なんて思っていますが、たくさんのエラーに困らされそうです。
困った際はqiitaに質問をして皆さんに助けていただきたいな〜なんて思っています。
それでは本日もお疲れ様でした。