【プログラミング】Pythonで文字や数値・変数を使って文章を表示する方法

python

結論:Print関数で以下のコードを書く

Print(1)
Print("あかさたな")
サンプルの「1」と「あかさたな」に任意の文字列を入力してください。
実行結果
1
あかさたな

Pythonで文字や数値を表示したり、変数と呼ばれる値を格納する箱を扱う方法を解説します。

これからプログラミングを覚えていきたい人の基本となる部分ですので、こちらの記事を何度も見返しながら覚えていきましょう。

Anacond」と「Jupyter Lab」のインストールがまだの方はこちら
<strong>komori</strong>
komori

本記事は下記の様な方にオススメです!

この記事をおすすめしたい人
  • 前回の記事を読んでPythonに少しでも興味が出た人

  • Pythonが書ける環境は出来たけど、そこからどうするか考えていない

  • 独学でPythonの勉強をしているけど、他の人ってどんな事からしているのか知りたい

今回もこちらのスッキリわかるPython入門を参考に進めていきます。


「Anaconda Prompt」から「Jupyter Lab」を起動する

Anaconda Promptを起動する

前回インストールしている「Anaconda」の中に含まれているアプリ「Anaconda Prompt」呼び出しましょう。

※デスクトップ画面にショートカットを作ってない方は検索で「ana」で画面のような状態になりますので、そこから起動します。

「Anaconda Prompt」から「Jupyter Lab」を起動する

「Anaconda Prompt」の画面にて「Jupyter Lab」と入力してください。

(base) C:\Users\*******>jupyter lab

入力出来たらエンターキーを押しましょう。

※ジュピター(jupyter)の綴りを間違いやすいのご注意ください。
※ジュピター(jupyter)とラボ(lab)の間は半角スペースです。

Jupyter Lab起動後の手順について

Notebookを選択

初めて起動した方は画面の見方に戸惑いますが、画面の「Notebook」を選択します。

Jupyter Labの画面については以下のサイトで詳しく紹介されています。

参考リンク:AI-interのPython3入門

まずはファイル名をつけておきましょう。

今は新規作成のファイルとなって
いてファイル名が「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)エラー
実行結果から分かることは以下のとおりです。

1.数値を「 + 」で結合すると足し算が実行され結果が表示される

2.文字列を「 + 」で結合すると文字列をくっつけた結果として文字列が表示される

上記の「なんでやねん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関数で文章を書いて出力してみる

文章を書く際に用いられるものをご紹介します。

print関数で色々な文字出力を試す
  • 文字列として文章を出力するプログラム

  • 改行を表す制御文字を入れた文章を出力するプログラム
    (下の画像内の青くラインが入った部分が実行結果です。)

  • バックスラッシュを含んだ文章を出力するプログラム

  • 引用符のシングルクォーテーションとダブルクォーテーションを含んだ文章を出力するプログラム


変数

変数を使って計算、文字列を結合する

ここからは変数を用いてプログラムを書いていきます。
変数とは何か。と言うことになりますが、Pythonという言語に関わらず他のプログラミング言語にも用意されている仕組みとなります。

書籍やインターネットなど、多くの場合、変数はよくで例えられます。

箱の中に値(数値や文字列)を入れて取り扱うことで、状況によって中身を変えることが出来るものです。

変数に値を代入する

変数名 = 値 

hensuu1 = 5
hensuu2 = "変数"

変数の使い方について

例えば、入力された誕生日から占いをするアプリがあるとします。
誕生日はアプリを使う人それぞれで異なるので、アプリを使っている人が入力した誕生日によって占いの結果が変わってきます。

この誕生日は、1月1日~12月31日の全365種類の中から入力されるため、この値を変数に代入してみます。

変数(birthday)に誕生日を代入するコード

入力するコード
birthday = input("誕生日を入力してください>>>")

print(birthday)
実行結果
誕生日を入力してください>>> 1999/9/9
1999/9/9
※代入した値を日付として取り扱う場合の処理や、誕生日以外の文字列が入力された場合などはここでは考慮せず。

また、繰り返し行うプログラムに変数は使われます。
以下は、数字の1から5を表示するプログラムになりますが、変数を使う場合と使わない場合の書き方です。

A:変数を使わないコード(1~5までを表示する処理)

print(1)
print(2)
print(3)
print(4)
print(5)

B:変数を使ったコード(1~5までを表示する処理)

value = 1
print(value)
value += 1
print(value)
value += 1
print(value)
value += 1
print(value)
value += 1
print(value)

C:変数と繰り返し処理を使ったコード(1~5までを表示する処理)

for i in range(1,6):
    print(i)
    i = i + 1
実行結果
1
2
3
4
5

A~Cの3パターン全て同じ実行結果となります。

変数名の命名におけるポイント

画像では変数name、age、pokemonの3つを準備してそれぞれに値を代入しています。
nameには’さとし’、ageには10、pokemonには’ピカチュウ’が代入されていて、Print関数で出力するプログラムによりそれぞれの値が表示されています。
なお、変数名には使えないものがあったり、慣習的に気を付けた方が良いことなどがありますので下記の表を参考にしてください。

変数の命名にて注意すべき点具体例
予約語if、for、global、with、import など…
先頭が数字24colors、3coins など…
先頭に__
※アンダースコアが2つ
__doubleunderscore など…
大文字・小文字、全角・半角は区別されるName name は別物扱いとなるなど…
小文字で始まり、値との関連性が高いものが望ましいname age pokemonなど…
ポイント
  • 変数名は第3者からわかりやすいといった点を意識して命名する

  • 慣習があるのであればそれに従う方法で命名する

  • 予約語は使えないので注意する

変数への値の代入をまとめておこなう

アンパック代入

name , age , pokemon = ‘さとし’ , 10 , ‘ピカチュウ’

変数の名前のつけかたのポイント

おすすめの変数名

変数には単語をつなげた名前をつける事もできます。

画像ではmy_fingerの各単語”my”と”finger”を_(アンダースコア)でつなげた変数名としています。


アンダースコアで単語を繋げたものをスネークケースと呼びますが、変数名に迷ったときはこちらを使うようにすると無難になります。

スネークケース以外にもMyfinger(アッパーキャメルケース)myFinger(ロワーキャメルケース)、my-finger(チェインケース)などがあります。

後から見直すことがあるプログラムにおいては可読性はとても重要です。
そのため、変数名からその変数がどんな役割をもっているかが想像しやすいものにしておくことが、後のアップデートやメンテナンスを助けることになります。

変数の値の更新の書き方

入力コード
age=10
age+1
print(age)

age = age + 1
print(age)
実行結果
10
11
変数の値の更新について

変数の値を更新する記述について
age + 1

上記のコードでは、変数ageに代入された値の「10」は変更されません。
変数の値を更新する場合、以下のように書きます。
age = age + 1


複合代入演算子による変数の値の代入

複合代入演算子とは変数の値に指定処理を行い、改めて変数に値を代入するためのものです。

複合代入演算子の書き方説明
変数+= 値 ( 例: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関数の()内で指定した文字列が表示されますので、入力を促す文章などを記入します。

  1. 変数名nameの値を入力する
    あなたの名前を教えてください。に入力された内容が変数nameに代入されます。
    ※サンプルでは「さとし」を入力
  2. 変数ageの値を入力する
    あなたの年齢を教えてください。に入力された内容が変数ageに代入されます。
    ※サンプルでは「10」を入力
  3. 変数名pokemonに値を入力する
    あなたのパートナーを教えてください。入力された内容が変数pokemonに代入されます。
    ※サンプルでは「ピカチュウ」を入力
実行結果
あなたの名前を教えてください。 さとし
あなたの年齢を教えてください。 10
あなたのパートナーを教えてください。 ピカチュウ
あなたの名前はさとしで、年齢は10歳で、パートナーはピカチュウです。

データ型の種類と用途

変数のデータ型(若しくは型)とは、数値や文字列・日付などの値がもつ種類となります。
いくつかのデータ型を表にして掲載します。

データ型の名前説明
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 を文字列型で宣言する場合の書き方)

整数型の変数(箱)には整数を代入、文字列型の変数(箱)には文字列を代入することが原則となりますので、型宣言をした後に型の異なる値を代入しようとするとエラーになります。

具体例:age = ”さとし” や name = 10 を書いた場合など。

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)
<strong>komori</strong>
komori

★ポイント★
文字列を整数や小数に変換しようとするとエラーが発生します。

---------------------------------------------------------------------------
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関数を使って文章を表示するコードとなります。

全て同じ実行結果となりますが、それぞれを比較してみます。

先ずは、基本の書き方

print('俺の名前は'+ name +'で、年齢は' + str(age) + '歳です。\n相棒のピカチュウの身長は'+ str(poke_height) + '㎝です。\n')
※改行が\nで表示されていますが、バックスラッシュとnです。ご了承ください。

全ての文章をつなげる上で整数型の変数ageと、小数型の変数のpoke_heightをstr関数で文字列に変換する必要がります。

こちらはオーソドックスな書き方ですが、文字列と変数が混在されて表示されることからコードが読み取りにくい印象となります。

続いてはこちら。

print('俺の名前は{}で、年齢は{}歳です。\n相棒のピカチュウの身長は{}㎝です。\n'.format(name,age,poke_height))
※改行が\nで表示されていますが、バックスラッシュとnです。ご了承ください。

こちらはfomat関数を用いて文字列と変数を結合しています。ポイントは{}を使ってそれぞれの変数を代入しているのですが、コードの左側からformat関数の()内の変数を順番に代入しています。

具体的には、”俺の名前は{}で…”内の{}中には変数nameの値が、”年齢は{}歳です。…”の{}には変数ageの値が、”ピカチュウの身長は{}㎝…”の{}には変数pokemon_heightの値が代入されます。

さいごはこちら。

print(f'俺の名前は{name}で、年齢は{age}歳です。\n相棒のピカチュウの身長は{poke_height}㎝です。')
※改行が\nで表示されていますが、バックスラッシュとnです。ご了承ください。

こちらはf-stringという書き方となります。

表示したい文字列の前に”f”を入力し、シングルまたはダブルクォーテーションで文字列を囲みます。

文字列内に変数を含める場合、{}で囲った内側に変数名を指定することで、指定された変数の値が表示されます。

<strong>komori</strong>
komori

例え同じ結果でも、読みやすいコードを書く事を意識します。書き方次第で冗長化を防げるのであれば、こういったテクニックは積極的に利用することをおすすめします。

文字列と変数を用いて文章を表示する(応用編)

input関数とアンパック代入の組み合わせ、f-stringを用いて文章を表示してみます。
この書き方なら、コードは少し長くなりますが、2つのコードで書くことができます。


文字や数値を表示・変数についてのまとめ

  • Print関数を使って文字や数値を表示する
  • 「 + 」や「 , 」などで足し算や文字列の結合もでき
  • 文字列はシングルもしくはダブルクォーテーションで囲む
  • 変数は文字列や数値を代入して文字結合や計算などに使うことができる
  • input関数で入力したものを変数に代入することができる
  • type関数で変数の値の型を調べられる

Pythonで文字や数値を表示する方法について掲載致しました。
複数の変数をまとめて扱うことのできる「コレクション」の書き方についても以下の記事で紹介しています。

にほんブログ村 IT技術ブログ IT技術メモへ
にほんブログ村
PVアクセスランキング にほんブログ村コダマのもりブログ - にほんブログ村

コメント

タイトルとURLをコピーしました