Day 5-ノートの整理
5037 ワード
pythonの分割構造はif文のみでswitchはありません
num=11 print('%dは偶数'%(num))
1.if文
a.構文:if条件文:コードセグメント
b.説明:if-キーワード条件文-結果のある式(結果のタイプにかかわらず):-固定コードセグメント-ifはインデントされた1つ以上の文を保持します.
c.実行プロセス:条件文の結果がTrueであるか否かを判断し、Trueである場合はコロンの後のコードセグメントを実行する.条件文の結果がブールでない場合は、結果をブールに変換してから判断します.
1.1 if後に書く文
if 10:print('条件は文が10')
if'abc':print('条件は文がabc')
if True:print('条件は文がTrue')
if 100>20:print('条件は文が100>20')
if 'AHSG'.isupper():print('すべて大文字!')
注意:付与文はifの後に書くことはできません
if num=10:print('付与文')num=11 if num&1==0:print('%dは偶数'%(num))print('=================')#ifがインデントを保持する文は、条件が成立したときにprintを実行する('^^;)
print('~~~~~~~~~~~~~')#ifの外の文はif条件が成立するかどうかにかかわらず実行されます
練習:ランダムに年齢値を生成し、年齢が18以上であれば「成年」を印刷し、年齢にかかわらず、年齢値を印刷します.
import random age = random.randint(0,100)print('年齢:',age)if age>=18:print('成年')
2.if-else
a.構文:if条按句:コードセグメント1 else:コードセグメント2
b.実行過程:まず条件文がTrueであるかどうかを判断し、Trueであればコードセグメント1を実行する.それ以外の場合は、コードセグメント2を実行します.
ランダムに1つの整数を発生して、もし奇数の印刷'XXXが奇数です'ならば、さもなくば印刷'XXXは偶数です'
num = random.randint(0,20)if num&1==1:print('%dは奇数'%num)else:print('%dは偶数'%num)print('!!!
if - elif - else
"a.構文:if条件文1:コードセグメント1 elif条件文2:コードセグメント2 elif条件文3:コードセグメント3...else:コードセグメントn
b.実行過程:まず条件文1がTrueであるかどうかを判断し、Trueであればコードセグメント1を実行する.そうでなければ、条件文2がTrueであるか否かを判断し、Trueであるか否かを判断し、コードセグメント2を実行する.そうでなければ、条件文3がTrueであるか否かを判断し、Trueであるか否かを判断し、コードセグメント3を順次類推し、前の条件がFalseであればelse後のコードセグメントnを実行する
注意:1.後の条件判断の前提は前の条件が成立しないことである.ここのelifは場合によっては複数ありますが、elseは省略できます
成績によって成績を区分する:60点未満印刷不合格、6070合格、7189良好、90及び90以上優秀
score=60 if score<60:print('不合格')elif score<=70:print('合格')elif score<90:print('良好')elif score<=100:print('優秀')else:print('範囲外')
4.ifネスト
if,elif,elseの後ろのコードセグメントで、他のif文を書くことができます.
1つの数字が偶数であれば「偶数」を印刷し、そうでなければ「奇数」を印刷します.偶数が4型になる場合は、'4の倍数'を印刷します.
num=1 if num%2==0:print('偶数')if num%4==0:print('4の倍数')else:print('4の倍数')else:print('奇数')if num%5==0:print('5の倍数')
練習:文字列を入力して、最初の文字がアルファベットであるかどうかを判断します.印刷「アルファベットで始まる」場合.このアルファベットが大文字であれば、「大文字」を印刷します.例えば、'abc 123'->印刷'アルファベットで始まる''Abc 123'->印刷'アルファベットで始まる'と'大文字''12 hsj'->str 1=inputを何も印刷しません('文字列を入力してください:')str 1='Ahjdd'メソッド1:文字列.isalpha()->アルファベットかどうか
if str1[0].isalpha():print('アルファベットで始まる')#文字列.isupper()->大文字if str 1[0]かどうか.isupper():print('大文字')
方法2:
if'a'<=str 1[0]<='z'or'A'<=str 1[0]<='Z':print('アルファベットで始まる')
char=chr(random.randint(97,122))print('ランダム文字:',char)
pythonのループ構造には、forループとwhileループの2つがあります.
いつループを使用するか:ある操作を繰り返し実行する必要がある場合は、ループ""を使用することを考慮します.
1.forサイクル
a.構文:for変数inシーケンス:循環体
b.説明:for-キーワード変数-変数名、任意に命名(変数名の要件を満たす)in-キーワードシーケンス-文字列、リスト、元祖、辞書、集合、反復器、rangeループ体-およびforが1つのインデントを保持する1つまたは複数の文(再実行が必要なコード)であってもよい
c.実行プロセス:変数をシーケンスから値を取り、一つずつ取り、取り終わるまで;1つの値をとるごとに、順次循環体(forサイクルでは、シーケンス内の値の個数が、サイクルの回数を決定する;シーケンス内の内容は、変数ごとに取られる値を制御する)を実行する
d.注意:forの後の変数が取った値が循環体で使用されない場合、この変数の名前を付けるときは、1つの_名前を付ける
x = a print('=====') x = b print('=====') x = c print('=====')
for x in '1234': print(x) print('=====')
2.range
range(n)-数値シーケンスを生成し、シーケンスの内容は0~n-1(結果はシーケンス)range(m,n)-数値シーケンスを生成し、シーケンスの内容はm~n-1 range(m,n,step)-数値シーケンスを生成し、mからstepを毎回加算し、n前まで
rangeは一般的に:a.指定範囲のデジタルシーケンスを生成する必要があるb.単純にforサイクルのサイクル数を制御する
for num in range(10): print(num)
print('~~~~~~~~~~') for num in range(10, 21): print(num)
print('~~~~~~~~~~') for num in range(0, 10, 2): print(num)
練習:1+2+3+を求めます100 print('~~~~~~~~~~~~~')
sum1 = 0
num = 1 sum1 += num sum1 = sum1+num = 0+1 num = 2 sum1 += num sum1 = sum1+num = 1+2 num = 3 sum1 += num sum1 = sum1+num = 1+2+3 num = 4 sum1 += num sum1 = sum1+num = 1+2+3+4 ... num = 100 sum1 += num sum1 = sum1+num = 1+2+..+99+100
sum 1=0#保存とfor num in range(1,101):sum 1=sum 1+num sum 1+=num print(sum 1)
練習:2+4+6+8+...100メソッド1:if文を使用しない
sum1 = 0 for num in range(2, 101, 2): sum1 += num print(sum1)
方法2;if文で
sum1 = 0 for num in range(101): if num % 2 == 0: sum1 += num
1.whileサイクル
a.構文:while条件文:循環体
b.説明:while-キーワード条件文-結果のある式(付与文を除いて、一般的な式はすべて可能):-固定書き方循環体-とwhileは1つのインデントされた1つ以上の文を保持する(繰り返し実行される)
(ポイント!)c.実行過程:まず条件文がTrueであるかどうかを判断し、Trueであれば循環体を実行する.循環体を実行してから条件文がTrueであるかどうかを判断し、Trueであり循環体を実行する.条件文がTrueであるかどうかを判断し、Trueであるかどうかを判断し、また循環体を実行する.このように,判定条件文の結果がFalseであることが分かり,ループ全体が結果となる.
2.forループとwhileループの選択
pythonでは、forサイクルでできるwhileサイクルができます.しかしwhileサイクルができるのは、forサイクルができるとは限らない.
forループの使用:a.シーケンス内の要素(値)b.ループ回数決定を取得する
whileサイクル:a.死サイクルb.サイクル回数不確定
num=11 print('%dは偶数'%(num))
1.if文
a.構文:if条件文:コードセグメント
b.説明:if-キーワード条件文-結果のある式(結果のタイプにかかわらず):-固定コードセグメント-ifはインデントされた1つ以上の文を保持します.
c.実行プロセス:条件文の結果がTrueであるか否かを判断し、Trueである場合はコロンの後のコードセグメントを実行する.条件文の結果がブールでない場合は、結果をブールに変換してから判断します.
1.1 if後に書く文
if 10:print('条件は文が10')
if'abc':print('条件は文がabc')
if True:print('条件は文がTrue')
if 100>20:print('条件は文が100>20')
if 'AHSG'.isupper():print('すべて大文字!')
注意:付与文はifの後に書くことはできません
if num=10:print('付与文')num=11 if num&1==0:print('%dは偶数'%(num))print('=================')#ifがインデントを保持する文は、条件が成立したときにprintを実行する('^^;)
print('~~~~~~~~~~~~~')#ifの外の文はif条件が成立するかどうかにかかわらず実行されます
練習:ランダムに年齢値を生成し、年齢が18以上であれば「成年」を印刷し、年齢にかかわらず、年齢値を印刷します.
import random age = random.randint(0,100)print('年齢:',age)if age>=18:print('成年')
2.if-else
a.構文:if条按句:コードセグメント1 else:コードセグメント2
b.実行過程:まず条件文がTrueであるかどうかを判断し、Trueであればコードセグメント1を実行する.それ以外の場合は、コードセグメント2を実行します.
ランダムに1つの整数を発生して、もし奇数の印刷'XXXが奇数です'ならば、さもなくば印刷'XXXは偶数です'
num = random.randint(0,20)if num&1==1:print('%dは奇数'%num)else:print('%dは偶数'%num)print('!!!
if - elif - else
"a.構文:if条件文1:コードセグメント1 elif条件文2:コードセグメント2 elif条件文3:コードセグメント3...else:コードセグメントn
b.実行過程:まず条件文1がTrueであるかどうかを判断し、Trueであればコードセグメント1を実行する.そうでなければ、条件文2がTrueであるか否かを判断し、Trueであるか否かを判断し、コードセグメント2を実行する.そうでなければ、条件文3がTrueであるか否かを判断し、Trueであるか否かを判断し、コードセグメント3を順次類推し、前の条件がFalseであればelse後のコードセグメントnを実行する
注意:1.後の条件判断の前提は前の条件が成立しないことである.ここのelifは場合によっては複数ありますが、elseは省略できます
成績によって成績を区分する:60点未満印刷不合格、6070合格、7189良好、90及び90以上優秀
score=60 if score<60:print('不合格')elif score<=70:print('合格')elif score<90:print('良好')elif score<=100:print('優秀')else:print('範囲外')
4.ifネスト
if,elif,elseの後ろのコードセグメントで、他のif文を書くことができます.
1つの数字が偶数であれば「偶数」を印刷し、そうでなければ「奇数」を印刷します.偶数が4型になる場合は、'4の倍数'を印刷します.
num=1 if num%2==0:print('偶数')if num%4==0:print('4の倍数')else:print('4の倍数')else:print('奇数')if num%5==0:print('5の倍数')
練習:文字列を入力して、最初の文字がアルファベットであるかどうかを判断します.印刷「アルファベットで始まる」場合.このアルファベットが大文字であれば、「大文字」を印刷します.例えば、'abc 123'->印刷'アルファベットで始まる''Abc 123'->印刷'アルファベットで始まる'と'大文字''12 hsj'->str 1=inputを何も印刷しません('文字列を入力してください:')str 1='Ahjdd'メソッド1:文字列.isalpha()->アルファベットかどうか
if str1[0].isalpha():print('アルファベットで始まる')#文字列.isupper()->大文字if str 1[0]かどうか.isupper():print('大文字')
方法2:
if'a'<=str 1[0]<='z'or'A'<=str 1[0]<='Z':print('アルファベットで始まる')
if 'A'<=str1[0]<='Z':
print(' ')
char=chr(random.randint(97,122))print('ランダム文字:',char)
pythonのループ構造には、forループとwhileループの2つがあります.
いつループを使用するか:ある操作を繰り返し実行する必要がある場合は、ループ""を使用することを考慮します.
1.forサイクル
a.構文:for変数inシーケンス:循環体
b.説明:for-キーワード変数-変数名、任意に命名(変数名の要件を満たす)in-キーワードシーケンス-文字列、リスト、元祖、辞書、集合、反復器、rangeループ体-およびforが1つのインデントを保持する1つまたは複数の文(再実行が必要なコード)であってもよい
c.実行プロセス:変数をシーケンスから値を取り、一つずつ取り、取り終わるまで;1つの値をとるごとに、順次循環体(forサイクルでは、シーケンス内の値の個数が、サイクルの回数を決定する;シーケンス内の内容は、変数ごとに取られる値を制御する)を実行する
d.注意:forの後の変数が取った値が循環体で使用されない場合、この変数の名前を付けるときは、1つの_名前を付ける
x = a print('=====') x = b print('=====') x = c print('=====')
for x in '1234': print(x) print('=====')
2.range
range(n)-数値シーケンスを生成し、シーケンスの内容は0~n-1(結果はシーケンス)range(m,n)-数値シーケンスを生成し、シーケンスの内容はm~n-1 range(m,n,step)-数値シーケンスを生成し、mからstepを毎回加算し、n前まで
rangeは一般的に:a.指定範囲のデジタルシーケンスを生成する必要があるb.単純にforサイクルのサイクル数を制御する
for num in range(10): print(num)
print('~~~~~~~~~~') for num in range(10, 21): print(num)
print('~~~~~~~~~~') for num in range(0, 10, 2): print(num)
練習:1+2+3+を求めます100 print('~~~~~~~~~~~~~')
sum1 = 0
num = 1 sum1 += num sum1 = sum1+num = 0+1 num = 2 sum1 += num sum1 = sum1+num = 1+2 num = 3 sum1 += num sum1 = sum1+num = 1+2+3 num = 4 sum1 += num sum1 = sum1+num = 1+2+3+4 ... num = 100 sum1 += num sum1 = sum1+num = 1+2+..+99+100
sum 1=0#保存とfor num in range(1,101):sum 1=sum 1+num sum 1+=num print(sum 1)
練習:2+4+6+8+...100メソッド1:if文を使用しない
sum1 = 0 for num in range(2, 101, 2): sum1 += num print(sum1)
方法2;if文で
sum1 = 0 for num in range(101): if num % 2 == 0: sum1 += num
1.whileサイクル
a.構文:while条件文:循環体
b.説明:while-キーワード条件文-結果のある式(付与文を除いて、一般的な式はすべて可能):-固定書き方循環体-とwhileは1つのインデントされた1つ以上の文を保持する(繰り返し実行される)
(ポイント!)c.実行過程:まず条件文がTrueであるかどうかを判断し、Trueであれば循環体を実行する.循環体を実行してから条件文がTrueであるかどうかを判断し、Trueであり循環体を実行する.条件文がTrueであるかどうかを判断し、Trueであるかどうかを判断し、また循環体を実行する.このように,判定条件文の結果がFalseであることが分かり,ループ全体が結果となる.
2.forループとwhileループの選択
pythonでは、forサイクルでできるwhileサイクルができます.しかしwhileサイクルができるのは、forサイクルができるとは限らない.
forループの使用:a.シーケンス内の要素(値)b.ループ回数決定を取得する
whileサイクル:a.死サイクルb.サイクル回数不確定