PaizaでPython3の基本文法が完全無料なのでまとめました。
##01Pythonとは?
・Pythonとは
素早く効果的にシステムを開発できるように用に作られた
汎用プログラミング言語
・Pythonで、なにができるのか
本格的なWebサービスの開発
機械学習・AI、科学計算、統計解析
・採用例
Google,Youtube,Instagram,Dropboxなど
・pythonの特徴
スクリプト言語で開発しやすい
様々な分野のライブラリがある。
-機械学習 -ビックデータ解析
誰が書いても、同じような書き方になる
##02Pythonでプログラミングを書いてみよう
#hello worldを表示する
print("hello")
間違いやすいポイント
- スペースが全角文字になっている。
- ダブルクォーテーションが全角文字になっている。
- 関数名が、全て半角小文字で記述されていない。
- (× Print、 ○ print)
関数とは
Pythonでは、この「print」のような命令を「関数」と呼んでいます。
プログラミングでは、「print」のような関数で、コンピュータに対して動作を指示していきます。「print」と書くと、文字を表示するのだなとPythonが理解して、そのとおり動いてくれるのです。
プログラミング言語は、このような関数をたくさん持っています。各関数がどのように動作をするか、プログラミング言語ごとに決まっています。
##演習
1〜4「エラー箇所を正しく修正しよう」
5「指定された文字を出力しよう」
1.ダブルクォーテーション(")が全角
print(”hello paizaラーニング”)
print("hello paizaラーニング")
2.1つ目のダブルクォーテーションが全角
print(”hello paizaラーニング")
print("hello paizaラーニング")
3.2つ目がシングルクォーテーションになっている
print("hello paizaラーニング')
print("hello paizaラーニング")
4.Printが大文字になっている
Print("hello paizaラーニング")
print("hello paizaラーニング")
5.自分で書いてみよう
print("ハロー、paizaラーニング")
##03コメントでプログラムを見やすく!
・「#」を使ってコメントを書こう!
・プログラムをコメントにすることをコメントアウトという
・shift + 7 = シングルクォート (')
・シングルクォート3つで、囲むことで、複数行のコメントアウトができる
#コメント(この行は無視されます)
print("hello world")
#プログラムをコメントにすることを「コメントアウト」という
#print("hello world")
#シングルクォート3つで、囲むことで、複数行のコメントアウトができる
'''
print("hello world")
print("hello world")
print("hello world")
'''
##演習
1.「コメントアウトしてみよう」
最初の行をコメントアウトして。2番目の行だけ表示されるようにする
#print("勇者は、荒野を歩いていた")
print("モンスターがあらわれた")
2.「コメントアウトしてみよう」
期待する出力値だけ、出力しよう
print("勇者は、荒野を歩いていた")
#print("A:モンスターがあらわれた")
print("勇者は、すごい剣を手にいれた")
'''
print("A:ドラゴンがあらわれた")
print("A:魔王があらわれた")
'''
print("勇者は、世界を救った")
##04HTMLを表示してみよう
・html表示をする
print("<h1>hello world</h1>")
print("<p><世界の皆さん")
print("<b>こんにちは</b></p>")
・複数行でprint関数を扱う
シンングルクォーテーション(')3個で、複数行を扱うことができます。
print('''<h1>hello world</h1>
<p>世界の皆さん、
<b>こんにちは</b></p>''')
・print関数で改行したくない場合
文字列を「,」で区切ります。
この場合、出力された文字列は、スペースで区切られます。
print("<h1>hello world</h1>", "<p>世界の皆さん、", "<b>こんにちは</b></p>")
もうひとつの方法は、カッコの中に「, end=""」を追加します。
print("<h1>hello world</h1>", end="")
print("<p>世界の皆さん、", end="")
print("<b>こんにちは</b></p>", end="")
・「,end="%"」とすると、「%」で文字が区切られる
print("<h1>hello world</h1>", end="%")
print("<p>世界の皆さん、", end="%")
print("<b>こんにちは</b></p>", end="%")
##演習
1.「HTMLとして出力してみよう」
print("<p>勇者は、荒野を歩いていた</p>")
2.モンスターを太字にしてみよう
print('''勇者は、荒野を歩いていた
<b>モンスター</b>があらわれた''' )
##05変数を使えるようになろう
player="勇者"
#変数にデータを代入した
print(player)
player="戦士"
print(player + "は、荒野を歩いていた")
print(player + "は、モンスターと戦った")
print(player + "は、モンスターを倒した")
変数の名前のつけ方
Pythonで変数(ローカル変数)の名前は、次のルールに従って付けます。
・最初の1文字目:英文字または、「」(アンダーバー)
・2文字目以降 :英文字・数字「」(アンダーバー)
変数名の例:
○ player 1文字目が、英小文字
○ weapon 1文字目が、「」(アンダーバー)
○ player01 2文字目以降に数字
○ redDragon 2文字目以降に英大文字
× 1player 1文字目に数字は使えない
× class 重複
なお、「print」のように、Pythonで使われる関数名などは、
あらかじめ予約されている言葉なので変数名には利用できない
文字列の中で変数を利用する方法
文字データを格納した変数と文字列は、「+」記号で連結できます。
player = "戦士"
print(player + "は、荒野を歩いていた")
##演習
1.演習課題「変数の文字列を連結してみよう」
player = "勇者"
print(player+"は、レベルアップした")
2.演習課題「間違いを修正してみよう」
player1 = "勇者"
print(player1 + "の体力が回復した")
3.演習課題「間違いを修正してみよう Vol.2」
team = "勇者と戦士"
print(team + "の体力が回復した")
4.演習課題「変数の文字を出力する」
player = "勇者"
print(player + "は、荒野を歩いていた")
print(player + "は、モンスターと戦った")
print(player +"は、モンスターをたおした")
##06サイコロを作ろう
・str():数値を、数を表す文字に変換する関数です
https://docs.python.org/ja/3/library/functions.html#func-str
number = 300
print("スライムが" + number + "匹現れた")
#これだと、表示されない
print("スライムが" + str(number)+"匹現れた")
#nnumberをstrで数字を文字データに変換する
ランダム関数を使おう
・random関数:0から1までの間で、ランダムな数値を返す
・randomモジュール
https://docs.python.org/ja/3/library/random.html
import random
#ランダムモジュールをインポート
number=random.random()
print("スライムが" + str(number) + "匹現れた")
・randint関数:指定した引数の範囲で、ランダムな整数の値を返す
#1〜100までの数値でランダムに表示されるようにしたい
import random
number=random.randint(1,100)
print("スライムが" + str(number) + "匹現れた")
#10〜20までの数値でランダムに表示されるようにしたい
import random
number=random.randint(1,20)
print("スライムが" + str(number) + "匹現れた")
引数とは
関数の引数(ひきすう)とは、関数に与えるデータです。
引数は、関数に続くカッコの中に記述します。引数が複数ある場合は、「,」(コンマ)で区切ります。
引数の例
print(data)のdata
str(number)のnumber
戻り値とは
関数の戻り値(もどりち)とは、関数の処理結果のデータです。返り値と呼ぶ場合もあります。
random.randint(0, 10)という関数を呼び出すと、0から10までのランダムな数が戻り値となります。
##演習
1.「1〜6のサイコロを作る」
import random
number=random.randint(1,6)
print("サイコロの目は"+ str(number) + "です。")
2.「モンスターに与えるダメージを出力」
55〜99のランダムな数字の範囲
import random
number=random.randint(50,99)
print("モンスターに、"+ str(number) + "のダメージを与えた。")
##07演算子で計算してみよう
number = 100 + 20
print(number +30)
print(number)
+ たす
* 掛ける
/ 割る
% 余り
##演習
1.計算してみよう
number = 1234*5678/2
print(number)
2.変数で計算してみよう
a = 31
b = 17
# 以下に、aとbのかけ算し、結果を出力するコードを書いてください
print(a*b)
3.余りを計算してみよう
x = 8
y = 5
# 以下に、xをyで割ったときの余りを計算し、結果を出力するコードを書いてください
print(8%5)
4.カッコをつけて計算してみよう
number=(1234+5678)*3
print(number)
##値段の計算をしてみよう
apple_price=350
apple_num=5
print("りんごの単価" + str(apple_price) + "円")
print("りんごを買う数" + str(apple_num) + "個")
total=apple_price*apple_num
print("合計金額" + str(total) + "円")
#個数を1〜10にしたいのでrandom関数をインポートする
import random
apple_num=random.randint(1,10)
print("りんごを買う数" + str(apple_num) + "個")
total=apple_price * apple_num
print("合計金額" + str(total) + "円")
#単価を100〜300にしたい
apple_price=random.randint(1,3)*100
print("りんごの単価" + str(apple_price) + "円")
total=apple_price * apple_num
print("合計金額" + str(total) + "円")
##演習
strで囲むの忘れていた
# coding: utf-8
import random
number = random.randint(1, 10) # 匹数 1 ~ 10
print("体重100キロのスライムが" + str(number) + "匹あらわれた")
# 合計体重 = 匹数 x 100
total=number*100
print("スライムの合計体重は"+str(total)+"キロです")
#09データの型を覚えよう
number = 100 #数値
strings = "paiza" #文字列(ダブルクォーテーションで囲む)
print(number)
print(strings)
#文字同士を連結するときも + が使える
```lesson.py
strings ="ハロー" + "paiza"
print(strings)
#number = "100" + "30"
#print(number)
#str関数でnumber変数を文字列に変える
print(str(number)+strings)
#string型で一次的に変わっただけ
print(number + 20)
##演習
1.エラー箇所を正しく修正しよう
x = 50
print(x - 10)
2.エラー箇所を正しく修正しよう2
a = "モンスターが"
b = "あらわれた"
print(a + b)
3.エラー箇所を正しく修正しよう3
期待する値
0123456789
a = "01234"
b = "56789"
print(a + b)