1.4.1 関数呼び出し
関数とは、名前のある計算を実行する文のかたまり。関数を定義することは、名前と命令文を定義すること。関数を定義することで、あとから関数を名前で呼び出すことができます。
関数呼び出しの一例:
print('Pythonの関数!')
この関数の名前は「print」カッコの中には引数をいれます。このprint関数を呼び出すことで、引数である「pythonの関数!」が表示されます。
一般の関数は引数を受け取り、結果を返します。この結果のことを戻り値と言います。
1.4.2 型変換関数
Python は値の型を他の型に変換する組み込み関数がある。int 関数は任意の値を受け取り、可能なときはその型を整数に変換する。
>>>int('10000')
10000
>>>int('Yes!')
ValueError: invalid literal for int() with base 10: 'Yes!'
また、int関数は浮動点小数も整数に変換するが、小数点以下切り捨てになる。
float 関数は整数や文字列を浮動小数点数に変換する。
>>>float(100)
100.0
>>>float('3.1415926')
3.1415926
str 関数は引数を文字列に変換する。
>>>str(100)
'100'
>>>str(3.14159)
'3.14159'
1.4.3 数学関数
Python は学校で習った数学関数を一つのモジュールで提供している。モジュールとは関連する関数類を一つにまとめたファイルである。モジュールは使う前にそれをインポートする必要がある。
>>>import math
>>>print(math)
<module 'math' (built-in)>
この文でmath と言う名前のモジュール・オブジェクト(module object)が生成される。モジュール・オブジェクトをprint 文で印字とすると、このモジュールの情報が得られる。
このモジュール・オブジェクトはこのモジュールで定義された関数や変数を沢山含んでいる。それらの関数の一つにアクセスするには、モジュール名と関数名をドット(終止符として知られている)で区切って特定しなければならない。この記法はドット表記(dot notation)と言う。
1.4.4 混合計算
プログラミングの強力な特徴の一つはこれらの構成要素を混合(composition)して使えることである。例えば、関数の引数には算術演算子を含む任意の表式が使える。
>>>import math
>>>degrees = 45
>>>x = math.sin(degrees / 360 * 2 * math.pi)
1.4.5 新規関数の追加
python が提供している関数だけではなく、ユーザーが新たな関数を作成することができます。これを関数定義という。関数定義(function definition)するにはその新しい関数に名前を付ける、関数が呼ばれときに実行される一連の文を定義することである。
def print_huh():
'ユーザー定義関数'
print('Nice to meet you.')
print('What do you do?')
print_huh() #関数を呼び出し
def は予約語で、これが関数定義であることを示す。関数名はprint_huhである。関数名の後の空の括弧はこの関数は何も引数を受け取らないことを示す。
関数の一行目はヘッダー(header)と言われ、残りはボディー(body)と言われる。ヘッダーはコロンで終わり、ボディーはインデント(字下げ)される。習慣として、このインデントの量は4である。ボディーは任意の数の文を含んで構わない。インデントはTabキーを使用すると便利です。
1.4.6 関数の定義と利用法
def print_huh():
'ユーザー定義関数'
print('Nice to meet you.')
print('What do you do?')
def repeat_huh():
'ユーザー定義関数'
print_huh() #関数を呼び出し
print_huh() #関数を呼び出し
repeat_huh() #関数を呼び出し
このプログラムは2つの関数を含んでいる。二つの関数が定義されており、それぞれ呼び出されるまで関数内部の命令文は実行されません。関数の定義は、呼び出し前にしなければなりません。
1.4.7 プログラム実行時の流れ
プログラムは先頭から一度に1つずつ、最後に向かって実行されます。
関数定義も同様ですが、定義された関数が呼び出されるまで内部の命令文は実行されません。
1.4.8 仮引数と実引数
関数の引数について、仮引数と実引数があります。仮引数とは、関数を定義しているところに書いている引数です。実引数とは、関数を呼び出す際に書いている引数です。
def print_huh(num1, num2): #num1, num2は仮引数
'関数定義'
print(f'{num1}回笑った!')
print(f'{num2}回泣いた。')
print_huh(7, 8) #関数呼び出し 7,8は実引数
#実際に関数に渡される引数が実引数
1.4.9 変数や仮引数の有効範囲
関数内部で変数を定義した場合、その変数はローカル変数で関数の内部でのみ有効です。
def print_huh(num1, num2):
''
mar = num1 + num2
print(f'{num1}回笑った!')
print(f'{num2}回泣いた。')
print(f'{mar}回のエモーショナル!')
print_huh(7, 8)
print(f'{mar}回の感情表現!')
7回笑った!
8回泣いた。
15回のエモーショナル!
Traceback (most recent call last):
File "c:\Users\Documents\python\test.py", line 10, in <module>
print(f'{mar}回の感情表現!')
NameError: name 'mar' is not defined. Did you mean: 'max'?
以上のように、print_huh関数内で定義したmar変数ですが、関数外でprint関数をつかって表示しようとするとmar変数は定義されておりませんとエラーになってしまいます。
1.4.10 関数の戻り値
組み込み関数や数学関数は結果を生成します。関数が生成した結果を利用するには変数に代入するか、式の一部として利用します。
import math
x = math.exp(2.0)
print(x)
y = math.cos(x)
print(y)
次に、球の体積を求める関数を定義します。関数で計算した値を利用するためには、関数内でreturn文を使って関数の呼び出し元に値を返す必要があります。
import math
def volume(radius):
values = 4 * math.pi * radius**3
return values
print(volume(3))
1.4.11 関数の利点
- 関数を定義し処理毎にまとめることで読みやすくデバックしやすくなる
- 関数化することで再利用でき繰り返しがなくなる。また、変更が生じたときは修正しやすくなる
プログラミングに興味があるけれど、何から始めればいいかわからない方に最適な一冊が「スッキリわかるPython入門 第2版」です。以下のポイントを参考にしてください。
本書の特徴とメリット
- シリーズ累計90万部突破
多くの読者に支持され、信頼されている大人気入門書の改訂版。 - 初心者でもわかりやすい解説
基本的な「コツ」を丁寧に説明し、迷わず学習を進められます。 - 実践的な「しくみ」の理解
プログラミングの基礎だけでなく、実際の開発に役立つ知識を習得可能。 - 「落とし穴」の回避
初心者が陥りがちな間違いをカバーし、安心して学習を進められる内容。
実際の読者の声
- 現役プログラミング教室の先生も推薦!
「この本を読んでPCスキルをマスターすれば、それでメシを食えますよ」という評価もあるほどの内容。面白くて勉強になるとの声が多い。
プログラミング教育において、多くの初学者が挫折する理由をご存じでしょうか?実は、それには多くの共通点があります。テックジムは、その問題点を深く理解し、20年以上にわたって蓄積してきた経験をもとに、誰もが安心して学べるプログラミング講座を提供しています。
テックジムは、ただの学習場ではありません。プログラミングを始めたい方や、より高いレベルに達したい方々に向けた、実践的な学びの場です。私たちが提供するカリキュラムは、初心者が直面する課題や躓きやすいポイントを徹底的に研究し、それを解決するためにデザインされています。
多くのプログラミングスクールが、フレームワークや複雑な技術から始めることで、学習者に過度な負担をかけ、結果として挫折を生む原因となっています。テックジムでは、まずは本当に重要な基礎からスタートすることで、無理なくスキルを積み上げていくことができます。例えば、関数やクラスといったプログラミングの核心部分をしっかりと理解し、それを使いこなすための時間を十分に確保しています。
これにより、受講生たちは無駄な混乱を避け、確実にスキルを身につけていくことができるのです。テックジムでの学びは、単なる知識の詰め込みではなく、実際に「できる」ことを目指した実践的なトレーニングです。
テックジムのPythonプログラミング講座は、経験と実績が詰まった講座です。初心者でも安心して参加でき、確実にステップアップできるこの講座で、あなたもプログラミングの世界に飛び込んでみませんか?
プログラミング学習に挑戦した多くの人が、途中で挫折してしまうことがあります。これは、難解なフレームワークや複雑な概念にいきなり取り組むことが主な原因です。しかし、テックジムではそのような挫折を未然に防ぐため、独自のカリキュラムを採用しています。
テックジムのカリキュラムは、まず基礎をしっかりと固めることから始めます。関数やクラスといったプログラミングの根幹をじっくり学ぶことで、無駄な負荷をかけずに確実にスキルを身につけることができます。このアプローチにより、学習者は「何をやっているのかわからない」という混乱を避け、自信を持って次のステップに進むことができます。
また、テックジムでは、段階的にスキルを積み上げることで、学習の進行に伴う負担を最小限に抑えています。その結果、無理なく、着実にプログラミングの世界で成功を収めることができるのです。
テックジムのプログラミング講座は、学ぶことの楽しさを実感しながら、挫折せずに成長できる最適な環境を提供します。
プログラミング学習において、最新技術の活用は欠かせません。テックジムでは、ChatGPTを用いた学習サポートを取り入れています。ChatGPTは、あらゆる質問に即座に答え、コードのバグ解決もスムーズにサポートします。これにより、効率的に学習を進めることが可能です。
しかし、テックジムの強みは、これだけではありません。どんなに優れたAIでも、人間のコーチによる個別サポートの価値は計り知れません。テックジムでは、経験豊富なプロのコーチがあなたの学習を支えます。プログラミングの基礎から応用まで、丁寧な指導と的確なフィードバックを提供し、あなたが抱える疑問や課題を一つ一つ解決していきます。
このように、最新の技術とプロのコーチングを組み合わせることで、テックジムでは、効率的でありながらも確実にスキルを身につけることができる学習環境を提供しています。
テックジムで学びながら、最先端のAI技術とプロの指導のベストな融合を体験してみませんか?
テックジムのPythonプログラミング講座は、その効果と実績で多くの受講生から高い評価を受けています。8月には180名を超える方々がこの講座にエントリーし、その人気と信頼の高さを証明しています。
この講座では、受講生が着実にスキルを身につけ、成長していることを実感できるカリキュラムを提供しています。プログラミングの基礎から実践的な応用まで、段階的に学べる内容は、初心者から経験者まで幅広く対応しています。また、学んだ知識をすぐに実践に移せる環境を整えており、学習の成果をリアルタイムで確認できるのも大きな特徴です。
テックジムの講座を受講した多くの方々が、「理解が深まった」「自信を持ってコードを書けるようになった」といった喜びの声を寄せています。これまでに培った経験と実績を活かし、受講生一人ひとりが成功への第一歩を踏み出せるよう全力でサポートしています。
あなたも、この成果を実感できるカリキュラムで、プログラミングスキルを確実に伸ばしてみませんか?
プログラミングに興味はあるけれど、いきなり本格的な学習に踏み出すのは少し不安…そんな方に最適なのが、テックジムの無料体験です。まずは気軽に始めてみたい、という方のために、テックジムではデモレッスンを提供しています。
この無料体験では、実際のカリキュラムの一部を体験し、学習の進め方や講師のサポートを実感することができます。受講前に「自分に合っているかどうか」を確認できるので、安心してスタートを切ることができます。
プログラミングが全く初めての方も、すでにある程度の経験を持っている方も、まずはこの無料体験で、テックジムの学びを体感してみませんか?今すぐ始める一歩が、あなたの未来を大きく変えるかもしれません。
無料体験は随時開催中です。ぜひこの機会に、新たなスキルを手に入れるための第一歩を踏み出してみてください!