Webサイト制作コースのお申し込みはこちら Webサイト制作コースのお申し込みはこちら

Pythonのサンプルコードをまとめてます。コピペで実行結果を確認しながら、効率よく学習できます。

Pythonとは

Pythonは文法を単純化してコードの可読性を高めた、汎用の高水準言語です。ベースとなる部分は最小限に抑えられているのですが、科学計算や分析、画像処理など多岐にわたるモジュールが標準ライブラリやサードパーティから公開されていて、使用目的に応じて機能を拡張していくことが可能です。

現在では、ウェブアプリケーションやデスクトップアプリケーション以外にもシステム制御や、分析処理、機械学習など拾い範囲で有力視されるプログラミング言語となってます。

世界のプログラミング言語のランキングをレポートしているTIOBEインデックスによると、2020年2月のPythonの順位は3位でした。なお、1位はJava、2位はC言語でした。

参考)index | TIOBE – The Software Quality Company

【関連記事】
プログラミング言語ランキング2019 注目の言語はコレだ

Pythonの特徴は可読性、メンテナンス性の高さ

Pythonは、プログラムコード中に正確なインデント(字下げ)をおこなわないと、実行時にエラーになります。そのため、プログラマーは強制的に見やすいコードを書くことになり、可読性、メンテナンス性が高くなると言えるでしょう。

# -*- coding: utf-8 -*-
# Python sample 
a=10
if a > 5 :
    print( "%sは、5より大きい" % a)

最終行のインデントを削除してみましょう。

# -*- coding: utf-8 -*-
# Python sample 
a=10
if a > 5 :
print( "%sは、5より大きい" % a)

下記のエラー(インデンテーションエラー、インデントされたブロックが見つからない)が出力されて、実行が停止します。

IndentationError: expected an indented block

Python バージョン 2.xと3.xで違う

Pythonには大きく分けて、バージョン3.x系と、2.x系があります。文法も一部変わっています。

Python 2.x系は日本語などマルチバイト文字のハンドリングが難しいという欠点があります。新しくプログラムを開発するなら、特にアプリケーション要件による縛りがなければPythonのバージョンは3.xを利用しましょう。2020年2月現在、3.x系の最新バージョンは3.8.1です。

Pythonのインストール

参考)Python3.8の日本語ドキュメント(公式サイト)

Pythonは、Windows、Linux、Mac OS、その他のOSで動作します。Docker imageも容易されているため、コンテナ環境で扱うことも可能です。

参考)Download Python | Python.org Python公式のダウンロードページ

ダウンロードページから、インストーラをダウンロードし、実行しましょう。

Install Nowをクリックすれば、IDE(統合開発環境)を含むPythonモジュールがインストールされます。

Pythonサンプルコード集

Pythonはパソコンへのインストールも簡単ですが、オンラインでPythonを実行できるCODE CHEFなどのオンラインIDEサイトを使うと、さらにお手軽に学習が可能です。スマホやタブレットでも使えるようになります。

参考)Code, Compile & Run | CodeChef

print 標準出力に表示、改行の抑制も可能

# -*- coding: utf-8 -*-
print( "これはテストです")
print( 100 )
print( [0,1,2])
print('只今の時間は、%d時%d分です。' % (17,30) )

#改行したくない場合
print("Hello, ",end="")
print("world!")

printは、標準出力に文字や数値を表示します。リストや辞書型の出力も可能。デフォルトでは自動的に改行が入りますが、第二引数にend=””と指定することで改行なしにすることができます。

実行結果は以下のようになります。

これはテストです
100
[0, 1, 2]
只今の時間は、17時30分です。
Hello, world!

文字列の操作 置換や、両端の制御文字削除

# -*- coding: utf-8 -*-

a="Hello"
b="world"

#文字の連結
c=a+b
print( "%s+%s=%s" % ( a,b,c ) )

#文字列の繰り返し
f=a*10 print( f )

#フォーマット文字列で整形
d=format( '%s %s' % (a,b) )
print( d )

#置換
g=b.replace('or','OR')
print( g )

#文字列両端のスペース、タブ文字、改行を削除
h=' hello \n\n\n'
print( h )
i=h.strip()
print( i )

Pythonでは、文字列型の変数をa+bのように足し算することで文字列を連結できます。乗算すると、文字列を繰り返して連結します。format()を用いて、メッセージ中に変数を埋め込むなど自由に整形が可能。

replace()を用いて置換、strip()を用いて文字列両端のスペース、タブ文字、改行を削除できます。

実行結果は以下のようになります。

Hello+world=Helloworld
Hello world
HelloHelloHelloHelloHelloHelloHelloHelloHelloHello
wORld
 hello 



hello

list(配列) 異なる型の混在が可能

# -*- coding: utf-8 -*-

print( "リストの初期化" )
var_list=[1,2,3,4,5]
print( var_list )

print( "異なる型が混合したリスト" )
var_list2=['a','abd',3,0.1,'a']
print( var_list2 )

print("要素の指定")
print( var_list2[1])
print( var_list2[-1])

print( "リストへ要素の追加")
var_list2.append( 'item1')
print( var_list )

print( "リストから要素の削除")

print( "最初の要素を削除")
del var_list2[0]
print( var_list2 )

print( "最後の要素を削除")
del var_list2[-1]
print( var_list2 )

print( "リストのソート")
var_list3=['d','g','a','x','1']
sortedlist=sorted(var_list3)
print( var_list3)
print( sortedlist )

print("リストを文字列に変換" )
joinlist=','.join(sortedlist)
print( joinlist )

print("文字列をリストに変換")
var_list4='a,b,c,d,e,f,g'
splitlist=var_list4.split(',')
print( splitlist )

Pythonの配列は、リスト型と呼ばれています。異なる型の混在が可能で、要素の追加、削除、変更ができます。リストのソートや、文字列への変換、文字列→リストへの変換も可能です。

リストの初期化
[1, 2, 3, 4, 5]
異なる型が混合したリスト
['a', 'abd', 3, 0.1, 'a']
要素の指定
abd
a
リストへ要素の追加
[1, 2, 3, 4, 5]
リストから要素の削除
最初の要素を削除
['abd', 3, 0.1, 'a', 'item1']
最後の要素を削除
['abd', 3, 0.1, 'a']
リストのソート
['d', 'g', 'a', 'x', '1']
['1', 'a', 'd', 'g', 'x']
リストを文字列に変換
1,a,d,g,x
文字列をリストに変換
['a', 'b', 'c', 'd', 'e', 'f', 'g']

辞書型 キーワード指定で配列要素にアクセス

# -*- coding: utf-8 -*-

print( "辞書型オブジェクトの初期化" )
dict1={"dog":1, "cat":2, "rabbit":"a"}
print( dict1 )

print( "辞書型オブジェクトの要素にアクセス" )
print( dict1["dog"])

print( "辞書型オブジェクトに要素を追加" )
dict1["horse"]=5
print( dict1["horse"])

print( "辞書型オブジェクトの要素を削除" )
print( dict1 )
del dict1["horse"]
print( dict1 )

print( "辞書型オブジェクトの全削除" )
dict1.clear()
print( dict1 )

辞書型は、順番の決まっていないリストのようなものです。dist1[“horse”]など、添字にキーワードを指定してアクセスが可能。要素の柄や削除ができます。

辞書型オブジェクトの初期化
{'dog': 1, 'cat': 2, 'rabbit': 'a'}
辞書型オブジェクトの要素にアクセス
1
辞書型オブジェクトに要素を追加
5
辞書型オブジェクトの要素を削除
{'dog': 1, 'cat': 2, 'rabbit': 'a', 'horse': 5}
{'dog': 1, 'cat': 2, 'rabbit': 'a'}
辞書型オブジェクトの全削除
{}

forループ 2つのリストを同時に1要素づつ取り出す

# -*- coding: utf-8 -*-

print( "リストを順番に取り出す" )
vlist=['a','b','c']
for i in vlist:
    print( i )
   
print( "0~9までを順番に取り出す" )
for i in range(0,10):
    print( i )
else:
    print( "loop end")

print( "リストの値と、カウンタを取り出す" )
for i, val in enumerate(vlist):
    print( i, val)

print( "2つのリストをから要素を一つづつ同時に取り出す" )
vlist2=['x','y','z']
for v1, v2 in zip( vlist, vlist2):
    print( v1, v2 )

print( "リストを逆順に取り出す" )
for i in reversed( range(0,10) ):
    print( i )

print( "リストをソートして、要素を順番に取り出す" )
vlist3=['d','a','o','y','z']
for i in sorted( vlist3 ):
    print( i )

forはループ制御を行うことができます。リストから順番に要素を取り出したり、単に指定回数だけループすることが可能。関数との組み合わせで、リストを逆の順序で取り出したり、ソースした順に取り出すことも可能です。

実行するとこうなります。

リストを順番に取り出す
a
b
c
0~9までを順番に取り出す
0
1
2
3
4
5
6
7
8
9
loop end
リストの値と、カウンタを取り出す
0 a
1 b
2 c
2つのリストをから要素を一つづつ同時に取り出す
a x
b y
c z
リストを逆順に取り出す
9
8
7
6
5
4
3
2
1
0
リストをソートして、要素を順番に取り出す
a
d
o
y
z

if文 条件分岐

# -*- coding: utf-8 -*-

print( "# if分岐1")
a=1
if( a==1 ):
    print( "aの値は1です" )

print( "# if分岐2")
b=1
if( a==1 and b==1 ):
    print( "aもbも値は1です" )
elif( b==0 ):
    print( "bの値は0です" )
else:
    print( "aとbの値が想定外です" )

print( "# if分岐3")
b=0
if( a==1 and b==1 ):
    print( "aもbも値は1です" )
elif( b==0 ):
    print( "bの値は0です" )
else:
    print( "aとbの値が想定外です" )

print( "# if分岐4")  
a=0
b=1
if( a==1 and b==1 ):
    print( "aもbも値は1です" )
elif( b==0 ):
    print( "bの値は0です" )
else:
    print( "値が想定外です" )

if文は条件分岐をおこないます。if、elif、elseを使って複雑な分岐を構成することが可能。

# if分岐1
aの値は1です
# if分岐2
aもbも値は1です
# if分岐3
bの値は0です
# if分岐4
値が想定外です

まとめ

ポテパンダの一言メモ
  • Pythonはインデントが必須で、可読性、メンテナンスが高くなるよう設計された高級言語。
  • Windows、Linux、Mac OSなどで動作するPythonモジュールが用意されている。
  • Pythonはバージョン3.x系と2.x系で動作が異なる。日本語などマルチバイト文字を扱う場合は、3.x系を推奨。
  • Pythonをオンラインで実行できるIDEサイトを利用することで、インストールなどの下準備なしでPythonの学習が可能。

エンジニアになりたい人に選ばれるプログラミングスクール「ポテパンキャンプ 」

ポテパンキャンプは卒業生の多くがWebエンジニアとして活躍している実践型プログラミングスクールです。 1000名以上が受講しており、その多くが上場企業、ベンチャー企業のWebエンジニアとして活躍しています。

基礎的な学習だけで満足せず、実際にプログラミングを覚えて実践で使えるレベルまで学習したいという方に人気です。 プログラミングを学習し実践で使うには様々な要素が必要です。

それがマルっと詰まっているポテパンキャンプでプログラミングを学習してみませんか?

卒業生の多くがWebエンジニアとして活躍

卒業生の多くがWeb企業で活躍しております。
実践的なカリキュラムをこなしているからこそ現場でも戦力となっております。
活躍する卒業生のインタビューもございますので是非御覧ください。

経験豊富なエンジニア陣が直接指導

実践的なカリキュラムと経験豊富なエンジニアが直接指導にあたります。
有名企業のエンジニアも多数在籍し品質高いWebアプリケーションを作れるようサポートします。

満足度高くコスパの高いプログラミングスクール「ポテパンキャンプ」

運営する株式会社ポテパンは10,000人以上のエンジニアのキャリアサポートを行ってきております。
そのノウハウを活かして実践的なカリキュラムを随時アップデートしております。

代表の宮崎もプログラミングを覚えサイトを作りポテパンを創業しました。
本気でプログラミングを身につけたいという方にコスパ良く受講していただきたいと思っておりますので、気になる方はぜひスクール詳細をのぞいてくださいませ。