【結論】Print関数で以下のコードを書く
Print(1)
Print("あかさたな")
実行結果
1
あかさたな
ここでは、pythonで文字や数値を表示したり、変数と呼ばれる値を格納する箱を扱う方法を解説します。
これからプログラミングを覚えていきたい人の基本となる部分ですので、こちらの記事を何度も見返しながら覚えていきましょう。
本記事は下記の様な人にオススメです!
pythonに興味があるので、これから勉強をはじめようと考えている人
pythonが書ける環境は出来たけど、どうやって学習をすすめて良いかわからない人
独学でpythonの勉強をしているけど、他の人がどんな事からしているのか知りたい人
今回もこちらのスッキリわかるPython入門を参考に進めていきます。
「Anaconda Prompt」から「Jupyter Lab」を起動する
Anaconda Promptを起動する
前回インストールしている「Anaconda」の中に含まれているアプリ「Anaconda Prompt」呼び出しましょう。
※デスクトップ画面にショートカットを作ってない方は検索で「ana」で画面のような状態になりますので、そこから起動します。
「Anaconda Prompt」から「Jupyter Lab」を起動する
(base) C:\Users\*******>jupyter lab
入力出来たらエンターキーを押しましょう。
注意
※ジュピター(jupyter)の綴りを間違いやすいのご注意ください。
※ジュピター(jupyter)とラボ(lab)の間は半角スペースです。
Jupyter Lab起動後の手順について
Notebookを選択
初めて起動した方は画面の見方に戸惑いますが、画面の「Notebook」を選択します。
Jupyter Labの画面については以下のサイトで詳しく紹介されています。
まずはファイル名をつけておきましょう。
今は新規作成のファイルとなっていてファイル名が「Untitled.ipynb」となっています。
画面左のフォルダやファイルのリストにある「Untitled.ipynb」を選択し、右クリックのメニューからRenameで任意の名前に書きかえておきましょう。
Pythonコードを書いて数値や文字を表示する
Print関数で数値や文字を出力する
いよいよPythonのコードを書いていくわけですが、Jupyter Labではセルと言われる四角い領域の中にコードを記載していきます。
試しにセルの中に「 1 + 1 」と入力してタブ上の「▶(実行ボタン)」をクリックするか、キーボードの「Shift」を押しながら「Enter」キーを押しましょう。
数式を入力したセルの下に、実行結果の「2」が表示されていれば実行完了です。
コードを書いて、実行されるとコードを書いたセルの下に実行結果が表示されます。
画像中段に記載したとおり、文字列を実行する場合は ’(シングルクォーテーション)若しくは、”(ダブルクォーテーション) で表示したい文字列を囲むことが作法となります。
(※プログラムを書く時に文字列を扱う場合の作法)
数値や文字列を表示するためのコードは以下となります。
プログラムコード | 実行結果 |
---|---|
print(10) | 10 |
print(‘なんでやねん’) | なんでやねん |
print(‘nandeyanenn’) | nandeyanenn |
Pythonでは、Print(任意の値)で文字を出力することができます。
Printというのは関数と呼ばれるもので、「()内の文字を出力する」コードとなります。
詳しくはここで紹介しませんが、関数はPrint以外にも無数に存在していて、特定の機能や処理をもった命令文(コード)となります。また、繰り返し使う機能や処理をまとめて関数として扱うこともできます。
先ずは、こういった便利な命令文があるということを知っていればよいでしょう。
数値の計算や文字列の結合
計算結果や文字列を結合して表示してみましょう。
プログラムコード | 実行結果 |
---|---|
print(10 + 10) | 20 |
print(’10’ + ’10’) | 1010(※) |
print(‘なんでやねん’+’nandeyanenn’) | なんでやねんnandeyanenn |
print(なんでやねん+nandeyanenn) | エラー |
実行結果から以下のことが分かります。
数値を「 + 」で結合すると足し算が実行され結果が表示される
文字列を「 + 」で結合すると文字列をくっつけた結果として文字列が表示される
上記の「なんでやねんnandeyane」の場合、print( ‘なんでやねん’ + ‘nandeyanenn’ )と書いた場合と、print( ‘なんでやねんnandeyanenn’ )は実行される結果が同じになります。
「 + 」を使って、数値や文字列の加算または結合について書いたコードと実行結果
続いて、数値と文字列をカンマ「 , 」で区切った場合と実行結果
プログラムコード | 実行結果 |
---|---|
print(10 , 10) | 10 10 |
print(‘なんでやねん’,’nandeyanenn’) | なんでやねん nandeyanenn |
「 + 」以外の計算や結合と実行結果は以下の一覧のとおり
プログラムコード | 説明 | 実行結果 |
---|---|---|
print(10 + 2) | 足し算 | 12 |
print(10 – 2) | 引き算 | 8 |
print(10 * 2) | 掛け算 | 20 |
print(10 / 2) | 割り算(小数) | 5.0 |
print(10 // 2) | 割り算(整数) | 5 |
print(10 % 2) | 割り算の余り | 0 |
print(10 ** 2) | べき乗 | 100 |
print(’10’ + ‘2’) | 文字列の連結 | 102 |
print(‘なんでやねん’+’なんでやねん’) | 文字列の連結 | なんでやねんなんでやねん |
print(‘なんでやねん’*2) | 文字列の反復 | なんでやねんなんでやねん |
jupyter lab画面のコードで「#数値の計算」と「#文字列の結合」はコメントアウトしている箇所です。
処理の説明や補足情報を残すことで、後でコードを見返したり、書いた本人以外にも伝わりやすい、いわゆる可読性を向上させたいときなどに使います。
Print関数で文章を書いて出力してみる
文章を書く際に用いられるものをご紹介します。
●文字列として文章を出力するプログラム
●改行を表す制御文字を入れた文章を出力するプログラム
(下の画像内の青くラインが入った部分が実行結果です。)
●バックスラッシュを含んだ文章を出力するプログラム
●引用符のシングルクォーテーションとダブルクォーテーションを含んだ文章を出力するプログラム
pythonの変数について
pythonで変数を使って計算、文字列を結合する
ここからは変数を用いてプログラムを書いていきます。
pythonにおける「変数」とは何か。と言うことになりますが、結論から言えばpythonというプログラミング言語に関わらず、他のプログラミング言語でも用いられる仕組みとなります。
この「変数」は、書籍やインターネットなど、オンラインセミナーなどの多くの場合、よく「箱」で例えられます。
箱の中に値(数値や文字列)を入れて取り扱うことで、状況によって中身を変えることが出来るものです。
変数に値を代入する
変数名 = 値
hensuu1 = 5
hensuu2 = "変数"
変数の使い方について
例えば、入力された誕生日から占いをするアプリがあるとします。
誕生日はアプリを使う人それぞれで異なるので、アプリを使っている人が入力した誕生日によって占いの結果が変わってきます。
この誕生日は、1月1日~12月31日の全365種類の中から入力されるため、この値を変数に代入してみます。
変数(birthday)に誕生日を代入するコード
入力コード
birthday = input("誕生日を入力してください>>>")
print(birthday)
実行結果
誕生日を入力してください>>> 1999/9/9
1999/9/9
また、繰り返し行うプログラムに変数は使われます。
以下は、数字の1から5を表示するプログラムになりますが、変数を使う場合と使わない場合の書き方です。
数字1~5を表示するコードA:変数を使わない場合
print(1)
print(2)
print(3)
print(4)
print(5)
変数をつかわずに数値を直値(リテラル)で指定していると、メンテナンスやアップデートが発生した場合、全ての直値をコード上で書きかえる必要が発生します。
数字1~5を表示するコードB:変数をつかった場合
value = 1
print(value)
value += 1
print(value)
value += 1
print(value)
value += 1
print(value)
value += 1
print(value)
コードAと同様に、6~10の表示するプログラムに変更する場合を想定してみてください。
修正箇所は最初の変数valueに代入する値を1から6に変更するのみでアップデートが完了します。
数字1~5を表示するコードC:変数と繰り返し文つかった場合
for i in range(1,6):
print(i)
i = i + 1
変数と繰り返し文をつかうとさらにコード量も少なくすっきりしたものになります。
繰り返し文については、他の記事で紹介していますのでここでは詳しい説明を省きます。
実行結果:コードA・B・C全て同じ実行結果になります。
1
2
3
4
5
pythonの変数名をきめるときのポイント
画像では変数name、age、pokemonの3つを準備してそれぞれに値を代入しています。
nameには’さとし’、ageには10、pokemonには’ピカチュウ’が代入されていて、Print関数で出力するプログラムによりそれぞれの値が表示されています。
尚、変数名には使えないものがあったり、慣習的に気を付けた方が良いことなどがあります。
下記の表にまとめましたので、pythonで変数をあつかうときは参考にしてください。
変数名を命名するときに注意すべき点まとめ
変数の命名にて注意すべき点 | 具体例 |
---|---|
予約語 | if、for、global、with、import など… |
先頭が数字 | 24colors、3coins など… |
先頭に__ ※アンダースコアが2つ |
__doubleunderscore など… |
大文字・小文字、全角・半角は区別される | Name name は別物扱いとなるなど… |
小文字で始まり、値との関連性が高いものが望ましい | name age pokemonなど… |
pythonの変数の名前でつかえない予約語を確認する
予約語は以下のコードを実行することで確認ができます。
入力コード
import keyword
keyword.kwlist
print(keyword.kwlist)#予約語のリストを表示する
print(len(keyword.kwlist))#予約語数を表示する
実行結果
[‘False’, ‘None’, ‘True’, ‘and’, ‘as’, ‘assert’, ‘async’, ‘await’, ‘break’, ‘class’, ‘continue’, ‘def’, ‘del’, ‘elif’, ‘else’, ‘except’, ‘finally’, ‘for’, ‘from’, ‘global’, ‘if’, ‘import’, ‘in’, ‘is’, ‘lambda’, ‘nonlocal’, ‘not’, ‘or’, ‘pass’, ‘raise’, ‘return’, ‘try’, ‘while’, ‘with’, ‘yield’]
35
ここにでてくるものは変数名として使わないようにね。
pythonで変数の名前をつけるポイントまとめ
変数名は第3者からわかりやすい点を意識して命名する
ネットや他の記事でよく用いられる慣習があればならって命名する
予約語は使えないので注意する
後から見返したときにどんな役割の変数かがわかるようなものがいいよ。
pythonで変数にまとめて値を代入する方法
name , age , pokemon = 'さとし' , 10 , 'ピカチュウ'
変数の名前のつけかたのポイント
変数には単語をつなげた名前をつけることができる
単語をつながるときはアンダースコアを使ったスネークケースがおすすめ
スネークケース以外にアッパーキャメルケース・ロワーキャメルケース・チェインケースもある
pythonで変数の値を更新する方法
ここでは一度変数に値を代入した後、値を更新する方法を紹介します。
これと言って特別なことをするのではなく、以下のように書くことで更新可能です。
入力コード
age=10
age+1
print(age)
age = age + 1
print(age)
実行結果
10
11
変数ageに+1をするコードではageに代入された値は変わりません。
ageに代入された値を更新するためには、age = age + 1 と書く必要があります。
pythonで変数に値を代入する(複合代入演算子の使用例)
複合代入演算子とは変数の値に指定処理を行い、改めて変数に値を代入するためのものです。
複合代入演算子の書きかた | 書きかたの例 | 説明 |
---|---|---|
変数+= 値 | age += 5 | 変数の値に5を足して代入 |
変数-= 値 | age -= 5 | 変数の値から5を引いて代入 |
変数 *= 値 | price *= 1.5 | 変数の値に1.5を掛けて代入 |
変数 /= 値 | price /= 2 | 変数の値を2で割って代入 |
入力コード
#変数の更新(変数の値に足したり・引いたりする)
age,price = 10,100
print(age)
print(price)
age += 5#ageに5を足している(複合代入演算子)。age = age + 5 と同じ
price *= 1.5#priceに1.5をかけている(複合代入演算子)。price = price * 1.5 と同じ
print(age)#この時点での変数ageの値は15です。
print(price)#この時点での変数priceの値は150.0です。
age -= 5#ageから5を引いている(複合代入演算子)。age = age - 5 と同じ
price /= 2#priceを2で割っている(複合代入演算子)。price = price / 2 と同じ
print(age)
print(price)
実行結果
10
100
15
150.0
10
75.0
input関数でユーザーから入力された値を変数に代入する
変数に値を代入する方法は他にもあるので紹介します。
input関数使って変数に値を代入
ユーザーから入力された値が変数に代入されます。書き方は以下のとおり。
変数名 = input(文字列)
入力コード
name = input('あなたの名前を教えてください。')
age = input('あなたの年齢を教えてください。')
pokemon = input('あなたのパートナーを教えてください。')
print('あなたの名前は'+ name + 'で、年齢は' + age +'歳で、パートナーは' + pokemon + 'です。')
実行すると名前を入力する枠が表示されます。
input関数の()内で指定した文字列が表示されますので、入力を促す文章などを記入します。
- 変数名nameの値を入力する
あなたの名前を教えてください。に入力された内容が変数nameに代入されます。
※サンプルでは「さとし」を入力 - 変数ageの値を入力する
あなたの年齢を教えてください。に入力された内容が変数ageに代入されます。
※サンプルでは「10」を入力 - 変数名pokemonに値を入力する
あなたのパートナーを教えてください。入力された内容が変数pokemonに代入されます。
※サンプルでは「ピカチュウ」を入力
実行結果
あなたの名前を教えてください。 さとし
あなたの年齢を教えてください。 10
あなたのパートナーを教えてください。 ピカチュウ
あなたの名前はさとしで、年齢は10歳で、パートナーはピカチュウです。
pythonであつかうデータ型の種類と用途
変数のデータ型(若しくは型)とは、数値や文字列・日付などの値がもつ種類となります。
全てではないですが、よく使用するデータ型を表にして掲載します。
データ型の名前 | 説明 | 例 |
---|---|---|
int (インテ/インテジャー型) |
整数 | 10、100、-100 |
float (フロート型) |
小数 | 3.14、-0.5 |
str (ストリング型) |
文字列 | さとし、ピカチュウ |
bool (ブール/ブーリアン型) |
真偽値 | True、False |
pythonでは、変数を定義する際に型の指定は必要ありませんが、他のプログラミング言語の場合は、変数を宣言(定義)時に型の指定が必要なものも存在します。
例えば、VBA(Visual Basic for Applications)では下記のように記述したりします。
Dim age as Integer (※変数 age を整数型で宣言する場合の書き方)
Dim name as String (※変数 name を文字列型で宣言する場合の書き方)
VBAでは、整数型の変数(箱)には整数を代入、文字列型の変数(箱)には文字列を代入することが原則となりますので、整数型の変数に文字列の”さとし”を代入しようとするなど、型宣言をした後に型の異なる値を代入しようとするとエラーになります。
pythonで変数に代入した値の型は、type関数を使って確認することができます。
type関数の書き方は以下のとおりです。
type(変数名)
データ型は変更することも可能です。
上記の画像では、poke_height = str(poke_height)の部分でfloat(小数)型から、str(文字列)型に変更しています。これにより最終行のprint(type(poke_height))の実行結果が’str’に更新していることがわかります。
データ型変換関数の書き方 | 記入例 |
---|---|
int(変数名) | int(poke_height) |
str(変数名) | str(poke_height) |
float(変数名) | float(poke_height) |
★ポイント★
文字列を整数や小数に変換しようとするとエラーが発生します。
実行結果
—————————————————————————
ValueError Traceback (most recent call last)
<ipython-input-18-0d3ad7ea2dbd> in <module>
1 moji=”あ”
2 type(moji)
—-> 3 int(moji)
ValueError: invalid literal for int() with base 10: ‘あ’
「整数に変換できない値だよ!」ってエラーになったよ。
変数と文字列をつなげて文章を表示する
これまでの関数と変数を用いて文章を書いてみます。
以下はPrint関数を使って文章を表示するコードとなります。
変数と文字列をつなげて文章を表示するときの書き方3つ
print関数で文章を表示するときの書き方は3つあります。
結果はどれも同じになるので、極論で言えばどれをつかっても問題ないです。しかし、可読性の観点で考えるとコードはスッキリしやすいものを選ぶことお勧めします。
変数と文字列を” + “でつなげて文章を表示する方法
print('俺の名前は'+ name +'で、年齢は' + str(age) + '歳です。\n相棒のピカチュウの身長は'+ str(poke_height) + '㎝です。\n')
全てを文章でつなげる上で気を付ける点として、そもそも文字列である値が入っている変数nameは問題ないですが、整数型の変数ageと、小数型の変数のpoke_heightをstr関数で文字列型に変換する必要がります。
こちらはオーソドックスな書き方なので、文字列と変数が混在していてコードが読み取りにくい印象となります。
formatメソッドをつかって文章を表示する方法
print('俺の名前は{}で、年齢は{}歳です。\n相棒のピカチュウの身長は{}㎝です。\n'.format(name,age,poke_height))
こちらはfomatメソッドを用いて文字列と変数を結合しています。ポイントは{}を使って文章を書きます。
コードの末尾から.formatの引数に変数名を書いていくことで変数に代入された値が{}に代入されていきます。
具体的には、”俺の名前は{}で…”内の{}中には変数nameの値が、”年齢は{}歳です。…”の{}には変数ageの値が、”ピカチュウの身長は{}㎝…”の{}には変数pokemon_heightの値が代入されます。
f文字列(フォーマット済み文字列リテラル:f-string)をつかって文章を表示する方法
こちらの書きかたは、Python3.6から使えるようになった書き方で、個人的には最もおすすめです。
print(f'俺の名前は{name}で、年齢は{age}歳です。\n相棒のピカチュウの身長は{poke_height}㎝です。')
コードを見てもお分かりのとおり、かなり見やすくシンプルなコードとなります。表示したい文字列の前に”f”を入力し、シングルまたはダブルクォーテーションで文字列を囲みます。
文字列内に変数を含める場合、{}で囲った内側に変数名を指定すると、その変数に代入された値が表示されます。
例え同じ結果でも、読みやすいコードを書く事を意識します。書き方次第で冗長化を防げるのであれば、こういったテクニックは積極的に利用することをおすすめします。
文字列と変数を用いて文章を表示する(応用編)
input関数とアンパック代入の組み合わせ、f-stringを用いて文章を表示してみます。
それぞれは少し長くなりますが、たった2つのコードで書くことができます。
pythonで文字や数値・変数を使って文章を表示する方法まとめ
●Print関数を使って文字や数値を表示する
●「 + 」や「 , 」などで足し算や文字列の結合もできる
●文字列はシングルもしくはダブルクォーテーションで囲む
●変数は文字列や数値を代入して文字結合や計算などに使うことができる
●input関数で入力したものを変数に代入することができる
●type関数で変数の値の型を調べられる
pythonで文字や数値を表示する方法について紹介しました。複数の値をまとめて扱うことのできる「コレクション」の書き方についても以下の記事で紹介しています。
にほんブログ村 |
コメント